EECS 395: Introduction to Computational Complexity

Winter 2008

Lecturer: Lance Fortnow

Lectures: MWF 1:00-1:50 in Tech M177

Description:

This course will give an overview of computational complexity including Turing machines, relationships between time and memory, determinism and nondeterminism, reductions and the "P versus NP" problem. We will explore more recent results on randomness including pseudorandom generators and the power of probabilistic proofs.

This course is designed for graduate students or advanced undergraduates. We will assume familiarity with mathematical proofs but no previous knowledge of Turing machines or computational complexity.

Textbook Recommendation: Computers and Intractability: A Guide to the Theory of NP-Completeness by Michael Garey and David Johnson.

On-Line Resources

Complexity Zoo, list and defintions of hundreds of complexity classes.
Lectures in Computational Complexity, textbook draft by Jin-Yi Cai
Complexity Theory: A Modern Approach textbook draft by Sanjeev Arora and Boaz Barak
Foundations of Complexity, a series of weblog posts I wrote. Also see this post on the time and space hierarchies.

Assignments

Lectures:
Each lecture will be scribed by a student in the class.