Fundamentals of the Theory of Computation: Table of Contents
Preface
- Introduction
- Some Computing Puzzles
- What is Computability
- Related Works
- Overview of This Book
- Exercises
- Languages and Problems
- Introduction
- Symbols, Alphabets, and Strings
- Languages
- Operations on Languages
- Alphabet Encodings
- Some Test Languages
- How Many Languages Are There?
- Problem Representations
- Types of Problems
- Casting Problems into Languages
- Language Operations and Enumeration
- Exercises
- Regular Expressions and Languages
- Introduction
- Regular Languages and Constructions
- Regular Expressions
- Not All Languages Are Regular
- Applications of Regular Expressions
- Exercises
- Machines I - Finite Automata
- Introduction
- Basic Machine Notions
- Deterministic Finite Automata
- Nondeterministic Finite Automata
- Equivalence of DFAs and C-Programs
- Exercises
- Properties of Finite-State Languages
- Introduction
- Machines for Five Language Operations
- Regular Expression and DFA Equivalence
- Pumping Lemma for Regular Languages
- Applications of the Pumping Lemma
- Closure Properties and non-Regular Languages
- Exercises
- Machines II - Stacks and Tapes
- Pushdown Automata
- Turing Machines
- Undecidable Languages
- Relations Among Language Classes
- Grammars
- Introductions
- Context-Free Grammars
- Closure Properties of Context-Free Languages
- Parsing with PDAs
- Parsing with DPDAs
- Parse Trees and Attribution
- Languages That Are Not Context-Free
- Exercises
- Computational Complexity
- Introduction
- Asymptotic Notation
- Time and Space Complexity
- Simulations
- Reducibilities
- Exercises
- Regular Grammars
- Circuit Complexity
- Introduction
- The Boolean Circuit Model of Computation
- Circuit Resources
- Examples of Boolean Circuits
- The Complexity Class NC
- Exercises
- Feasible Problems
- Introduction
- Polynomial Time
- P-completeness Theory
- Examples of P-complete Problems
- P-complete Problems and Reductions
- Exercises
- Intractable Problems
- Introduction
- Nondeterministic Polynomial Time
- NP-completeness Theory
- Examples of NP-complete Problems
- NP-complete Problems and Reductions
- Exercises