Who: Taught by Amit Chakrabarti
When: 2A hour, TTh 14:00-15:50, X-hr W 16:15-17:05
Where: Sudikoff 214
This course is designed as a follow-up to an introductory Theory of
Computation course, such as Dartmouth's CS
39. Students who have not yet taken such an introductory course
are required to do so before registering for CS 109.
In CS39, we
learned that the Turing Machine is a powerful abstraction that helps us reason
about computation. In this course, we shall continue from where CS39 left off,
and delve deeper into the mysteries of the Turing Machine and study five key
aspects of computation: time, space, nondeterminism, randomness and
interaction. The goal is to understand the power of each of these. The
course is structured into three major phases, as indicated in the following
plan.
Phase 1: Delving deeper into Nondeterminism, Time and Space |
1. | Mar 29 | Review of Turing Machines, Nondeterminism, DTIME, NTIME, P, NP | [Sip], Ch.3,4,5,7 | — |
2. | Mar 31 | Review of reductions and NP-completeness | [Sip], Ch.7 | Homework 1 (due Apr 6) |
3. | Apr 5 | Space complexity; Savitch's Theorem; L, NL, NL-completeness | [Sip], Ch.8 | Homework 2 (due Apr 11) |
4. | Apr 7 | Immerman-Szelepcsenyi Theorem (NL = coNL); PSPACE; TQBF | [Sip], Ch.8 | Homework 3 (due Apr 15) |
5. | Apr 12 | Space and time hierarchy theorems, deterministic and nondeterministic | [Sip], Ch.8,9 | Homework 4 (due Apr 18) |
6. | Apr 14 | Polynomial hierarchy (PH); Alternating TMs | [AB], Ch.5 | Homework 5 (due Apr 20) |
7. | Apr 19 | Circuits; Non-uniformity; Shannon's Theorem; SIZE versus DTIME | [AB], Ch.6 | Homework 6 (due Apr 27) |
8. | Apr 21 | Shannon's Theorem; Computation with advice; Karp-Lipton Theorem | [AB], Ch.6 | — |
Phase 2: The Power of Randomness |
9. | Apr 26 | Randomized computation; Three examples; Schwartz-Zippel Lemma | [AB], Ch.7 | Homework 7 (due May 2) |
10. | Apr 28 | BPP; RP; ZPP; Error reduction by repetition; Chernoff bounds; Adleman's Theorem | [AB], Ch.7 | Homework 8 (due May 4) |
11. | May 3 | Sipser-Gacs Theorem; Randomized reduction; Valiant-Vazirani Theorem | [AB], Ch.7,17 | — |
12. | May 5 | Foundations of cryptography; one-way functions, pseudorandom generators | | Homework 9 (due May 11) |
13. | May 10 | Next-bit unpredictability and PRGs; Goldreich-Levin theorem | [AB], Ch.9 | — |
13A. | May 11 (X-hr) | One-way permutations to PRGs | [AB], Ch.9 | — |
Phase 3: The Power of Interaction |
15. | May 12 | Interactive proofs (IP); Arthur-Merlin games (AM); Graph Non-Isomorphism | [AB], 9.3 | Homework 10 (due May 18) |
16. | May 17 | Goldwasser-Sipser Protocol; GNI and NP-completeness | [Sip], Ch.9 | Homework 11 (due May 23) |
17. | May 19 | Arithmetization; LFKN Theorem; Shamir's Theorem (IP = PSPACE) | [AB], Ch.8 | — |
18. | May 24 | Introduction to PCPs; PCP theorem; Applications | [Sip],
10.4 | Homework 12 (due Jun 1) |
– | May 26 | (no lecture, Amit is out of town) | | |
19. | May 31 | Hastad's 3-bit PCP; More applications | | |
Announcements
- The final exam will be a take-home 24-hour time limited exam. You will have a period
of about 6 days during which to do it, and you get to choose any contiguous 24-hour
interval during which to work on the exam. Further details will be announced later, as
necessary.
Textbooks and Such
There is no set textbook for the course, so it is vital to attend
class. However, there are three reference books that cover just about
everything we shall do in class, and I will be updating the schedule
table above with appropriate references. These reference books are:
- Introduction to the Theory of Computation (Second Edition).
Michael Sipser. Referred to above as [Sip].
- Computational Complexity. Christos Papadimitriou. Referred
to above as [Pap].
- Complexity Theory: A Modern Approach. Sanjeev Arora and
Boaz Barak. Draft available online.
Referred to above as [AB].
Administrative Details
Your goal is to earn at least 30 points over the
course of the term, at least 6 of which must be earned from a
final exam. There are two ways to earn points.
Homework: Starting Apr 8, there will be a short homework,
consisting of approximately 2 problems, given out after every class.
There will be a total of about 25 problems given out throughout the
term. Each problem will be worth 2 points. I strongly recommend that
you solve each homework before the next class, as this will help in your
understanding of the next class. By "solve", I mean solve for
yourself. You don't need to turn in everything, just turn in "enough" to
make progress towards the 30-point goal. If you score over 24 points
from your homeworks, the extra points will count towards extra credit.
Final exam: This will be a take-home exam given out at the
end of the course. The maximum possible score in the final exam
will be 10 points is 12 points, so you will have to
earn at least 20 18 points from turning in homework
solutions.
Working together is allowed on homework problems (except when
indicated otherwise), but not on the final exam.
Getting Help: This term, Amit has office hours TBD.
We may have a teaching assistant.
Feel free to just drop in if we are around, or make
an appointment if you want a specific time.
Similar courses taught by others: Luca Trevisan
(Berkeley) ,
Sanjeev Arora (Princeton)
Other courses taught by Amit Chakrabarti
Home
|