15-453 Formal Languages, Automata, and Computation

This course provides an introduction to formal languages, automata, computability, and complexity. It consists of a traditional lecture component supported by weekly homework assignments and occasional problem solving sessions. There are two midterms and a final examination.


  1. Finite Automata and Regular Languages
  2. Pushdown Automata and Context-Free Languages
  3. Turing Machines, Decidability, Reducibility
  4. Time Complexity, Classes P and NP, NP-completeness
  5. Space Complexity, Class PSPACE

[ Home | Schedule | Assignments | Handouts | Overview ]

Frank Pfenning