Table of Contents
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