Introduction to formal languages and automata theory
Deterministic and nondeterministic automata concepts
Syntax and usage in pattern matching and language definition
Grammar rules and syntax trees for language generation
Automata with memory stacks for context-free languages
Abstract machine model for computation and algorithms
Limits of computation and complexity theory