CS 262
Computational Complexity
Winter 2010


Sandy Irani
4042 Bren Hall

Class Times and Place

MWF 11:00AM-11:50AM
ICS 243
No class: Jan 18, 20, 22
Will schedule one make-up lecture.

Course Overview

The study of computational complexity is concerned with the question of what can we computed with limited resources (time, space, randomness, parallelism, communication, etc.). We will define general classes of problems that can be solved with a particular set of resources and will study the relationships between these classes. We will provide proofs for many of the known relationships between these classes.


The best course to have taken in preparation for this class is an undergraduate class on automata theory. An undergraduate class in algorithms is also good background. The course, however, is fairly self-contained and should be accessible to any student who is comfortable with mathematical abstraction and proofs.

Course Requirements

Problem sets will be given every week, handed out Friday and due the following Friday. There will be a take-home final exam.

Homework Policies: The homework exercised are an essential part of this course because the practice solving problems is important part of understanding the material. You can probably find many of the solutions to the homework exercises on the internet or in the literature but you will not get the benefit of solving the problems on your own. Therefore, the only sources you are allowed to consult in solving these problems are the text and notes from class (your own or those of a classmate).

I encourage you to work in small groups, but you must note your collaborators on the homework you turn in. In addition, you must write up your own solutions without any collaboration.

You are also encouraged to put your solutions into LaTeX. Here is a template that you can use: Homework Template .

Reading list

It is recommended that you have access to:

Lecture Topics and Homework

Week Topic Homework
Week 1 Models of Computation, Time and Space Complexity Homework 1
LaTeX Source
Week2 Non-determinism Homework 2
LaTeX Source
Week 3 CLASS CANCELLED. No Homework
Week 4 Circuits, Uniformity and advice, the NC hierarchy Homework 3
LaTeX Source
Week 5 Randomness: ranomized complexity classes, error reduction, pseudo-randomnumber generators. Homework 4
LaTeX Source
Week 6 Randomness: error-correcting codes, transforming worst-case hardness into average-case hardness. -
Week 7 Alternation and the Polynomial Hierarchy Homework 5
LaTeX Source
Week 8 Interactive Complexity Classes -
Week 9 Probabilistically Checkable Proofs and Hardness of Approximation Homework 6
LaTeX Source
Week 10 Counting Complexity Classes, Relativization and Natural Proofs Homework 7
LaTeX Source