CS294: Probabilistically Checkable and Interactive Proof Systems (S2019)

Basics


Instructor(s): Alessandro Chiesa
Teaching Assistant(s): Nick Spooner
Time: Tuesdays and Thursdays 15.30-17:00
Location: 310 Soda Hall
Office Hours: fix appointment via email (to Alessandro or Nick)

Course Description


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:

  • interactive proofs
    • IP=PSPACE
    • public to private coins
    • bounded communication/randomness
    • doubly-efficient interactive proofs (aka interactive proofs for muggles)
    • zero knowledge
  • basic probabilistic checking
    • exponential-size PCPs (Hadamard)
    • polynomial-size PCPs (Reed--Muller)
  • optimized probabilistic checking
    • reducing query complexity (proof composition, parallel repetition, 3-query PCPs, ...)
    • reducing proof length (routing, proximity testing to Reed--Solomon, ...)
  • probabilistic checking via gap amplification

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.

Prerequisites


This course requires knowledge of basic algorithms (CS 170) and complexity (CS 172).

Requirements


TBA

Reading and Resources


This course has no required textbook. We give specific references for each lecture. In addition, the following online resources could be helpful:

Assignments


TBA

Schedule


# Date Topic Reading
1 2019.01.22

Introduction

2 2019.01.24

Interactive Proofs 1

3 2019.01.29

Interactive Proofs 2

4 2019.01.31

Interactive Proofs 3

5 2019.02.05

Interactive Proofs 4

6 2019.02.07

Interactive Proofs 5

7 2019.02.12

Interactive Proofs 6

8 2019.02.14

Basic Probabilistic Checking 1

9 2019.02.19

Basic Probabilistic Checking 2

10 2019.02.21

Basic Probabilistic Checking 3

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.