Formal Languages and Computation: Models and Their Applications gives a clear, comprehensive introduction to formal language theory and its applications in computer science. It covers all rudimental topics concerning formal languages and their models, especially grammars and automata, and sketches the basic ideas underlying the theory of computation, including computability, decidability, and computational complexity. Emphasizing the relationship between theory and application, the book describes many real-world applications, including computer science engineering techniques for language processing and their implementation.
Covers the theory of formal languages and their models, including all essential concepts and properties
Explains how language models underlie language processors
Pays a special attention to programming language analyzers, such as scanners and parsers, based on four language models—regular expressions, finite automata, context-free grammars, and pushdown automata
Discusses the mathematical notion of a Turing machine as a universally accepted formalization of the intuitive notion of a procedure
Reviews the general theory of computation, particularly computability and decidability
Considers problem-deciding algorithms in terms of their computational complexity measured according to time and space requirements
Points out that some problems are decidable in principle, but they are, in fact, intractable problems for absurdly high computational requirements of the algorithms that decide them
In short, this book represents a theoretically oriented treatment of formal languages and their models with a focus on their applications. It introduces all formalisms concerning them with enough rigors to make all results quite clear and valid. Every complicated mathematic