CS 154 Syllabus

(Fall 1997)


The class will cover Finite Automata, Context Free Languages, and an introduction to complexity theory.

Topic by lecture - tentative

Part I: Regular and context free languages.
  1. Administrative, Introduction, course outline.
  2. Deterministic Finite Automata, definition, examples.
  3. Regular languages. notation. Regular expressions.
  4. Nondeterminism. Equivalence of NFA and DFA.
  5. Equivalence of regular expressions with DFA.
  6. Pumping lemma. Examples. Minimizing automata size.
  7. Context free grammers. Examples. Derivation trees.
  8. Chomsky normal form. Push down automata.
  9. Pumping lemma. Examples.
Part II: Computability and complexity theory
  1. Turing Machines. Definition. Examples.
  2. Equivalence with other computation models. Non-deterministic Turing machines. Church's thesis.
  3. Decidable and Turing-Recognizable languages. Examples.
  4. Undecidable languages. The halting problem.
  5. Turing-unrecognizable languages.
  6. Reducibility. Post Correspondence Problem.
  7. Polynomial time computations. The classes P and NP.
  8. NP-Completeness. The Cook-Levin theorem.
  9. Examples of NP complete problems.
  10. Advanced topics.

Last update: Sep 19, 1997 by
Dan Boneh