This course offers a graduate introduction to probabilistically checkable and interactive proof systems. Such proof systems play a central role in complexity theory and in cryptography. Their formulation and construction is arguably one of the leading conceptual and technical achievements in theoretical computer science. Results typically draw on techniques from coding theory, property testing, and graph theory.
Topics covered include:
Emphasis is on getting students up to speed for research in the area; lectures will often contain open problems or suggestions for future research.
The Piazza website is here.
This course requires knowledge of basic algorithms (CS 170) and complexity (CS 172).
Completing the course requires regular attendance/participation, completing occasional homework, scribing (once or twice), and a research project.
Grading will be based 20% on attendance/participation/homework; 40% on the scribe notes; and 40% on the research project.
This course has no required textbook. We give specific references for each lecture. In addition, the following online resources could be helpful:
TBA
#  Date  Topic  Reading 

1  2019.01.22  Interactive Proofs 1

Formulation of interactive proofs:
Video:

2  2019.01.24  Interactive Proofs 2

The sumcheck protocol: 
3  2019.01.29  Interactive Proofs 3

Shamir's protocol: Additional: 
4  2019.01.31  Interactive Proofs 4

GoldwasserSipser transformation:
Additional:

5  2019.02.05  Interactive Proofs 5

The results presented in class: Additional results: 
6  2019.02.07  Interactive Proofs 6

The result presented in class: A survey: Additional on implementations of GKR's protocol:
Additional on doublyefficient interactive proofs: 
7  2019.02.12  Interactive Proofs 7

On zero knowledge:
Video:

8  2019.02.14  Basic Probabilistic Checking 1

Video: New York Times article about the PCP Theorem: 
9  2019.02.19  Basic Probabilistic Checking 2

The exponentialsize constantquery PCP is the inner PCP in this paper: 
10  2019.02.21  Basic Probabilistic Checking 3

Main: Additional:
Video: 
11  2019.02.26  Basic Probabilistic Checking 4 

12  2019.02.28  Basic Probabilistic Checking 5 

13  2019.03.05  Basic Probabilistic Checking 6 

14  2019.03.07  Reducing Query Complexity 1 

15  2019.03.12  Reducing Query Complexity 2 

16  2019.03.14  Reducing Query Complexity 3 

17  2019.03.19  Reducing Query Complexity 4 

18  2019.03.21  Reducing Query Complexity 5 

X  2019.03.26  No class (spring break). 

X  2019.03.28  No class (spring break). 

19  2019.04.02  Reducing Query Complexity 6 

20  2019.04.04  Reducing Proof Length 1 

21  2019.04.09  Reducing Proof Length 2 

22  2019.04.11  Reducing Proof Length 3 

23  2019.04.16  Reducing Proof Length 4 & Gap Amplification 1 

24  2019.04.18  Gap Amplification 2 

25  2019.04.23  Gap Amplification 3 

26  2019.04.25  Class Project Presentations 1 

27  2019.04.30  Class Project Presentations 2 

28  2019.05.02  Class Project Presentations 3 

X  2019.05.07  No class. 

X  2019.05.09  No class. 