Chapter 1: Introduction to the Theory of Computing Chapter 2: Finite Automata Chapter 3: Regular Languages and Regular Grammars Chapter 4: Properties of Regular Languages Chapter 5: Context-Free Languages Chapter 6: Simplifications of Context-free Grammars and Normal Forms Chapter 7: Pushdown Automata Chapter 8: Properties of Context-Free Languages Chapter 9: Turing Machines Chapter 10: Other Models of Turing Machines Chapter 11: A Hierarchy of Formal Languages and Automata Chapter 12: Limits of Algorithmic Computation Chapter 13: Other Models of Computation Chapter 14: An Overview of Computational Complexity
Solutions and Hints for Selected Exercises Further Reading Index