This section gives an overview of some of the problems, that some previous algorithms for grammatical generation have. I discuss the LFG generator of , the DCG generator of  and Shieber's chart-based generator . Firstly I show that top-down generators have problems with (linguistically relevant) examples of `left recursion'. On the other hand, the bottom-up generator of Shieber requires grammars to be `semantically monotonic', a notion that I explain below. In the next section I show how BUG handles grammars that are not semantically monotonic.