The following are the lecture notes (courtesy of M. Ogihara):
Introduction and preliminaries.
Regular languages and finite automata: part I and part II.
Context-free languages and grammars.
Non-context-free languages and pumping lemma.
We will only be able to review the above topics briefly in class (they are supposed to be covered in CS150), while focusing on a few selected topics. You are thus required to review them (i.e. Chapters 0-2 of the textbook) carefully within the first three weeks of the quarter.
Turing machines and computability theory.
Undecidability and the Halting Problem.
PCP and the mapping reducibility.
More examples of NP-complete problems.
Space complexity and Savitch's Theorem.
PSPACE and PSPACE-completeness.
Here are three chapters that we wrote for Algorithms and Theory of Computation Handbook: Formal Grammars and Languages, Computability, and Basic Notions in Computational Complexity. These chapters are not very technical and may help provide some high-level concepts about the theory.
Here is a copy of 2003's final.