In the preceding two chapters we learned several models for language representation; formal grammars, L-systems, syntax flowgraphs and regular expressions. The natural languages are communication media, and so are the formal languages. The person whohears a spoken sentence should be able to
the meaning (i.e., the semantics) of the sentence. In this chapter we will learnhow to design machine models (i.e., automata) that
formal languages. We are not going to build a model which
a formal language, but one that
it. Here we use the word “
” in a much narrower sense than theword “
” as follows.What does it take for a machine M to recognize a language L? To answer this question it is better to think about a conceptualmodel, instead of complex computer systems currently available. From 1930’s computer scientists have investigated manymachine models, called automata, for language recognition. We will study four popular models –
, respectively, recognizing the languages of types 0, 1, 2, and 3, thatwe have introduced in Chapter 2. In Chapters 7, 12, and 14 we will study the so-called Chomsky hierarchy (after NoamChomsky), which shows the hierarchical relationship among the languages and automata.Automata can be classified into two types of models,
. In this chapter we will first study thedeterministic models, which naturally follow our intuition, and then the nondeterministic models in the following chapter.
For a given language L, we say a machine M recognizes L, if M, given a string x, can output “yes” or givea positive indication if and only if x L.