- Fall 2019: CS/Ph 120, Quantum cryptography.
- Winter 2019: CS/CMS 139, Design & Analysis of Algorithms.
- Fall 2018: CS152, Introduction to cryptography
- Spring 2018: CS38, Introduction to algorithms
- Winter 2018: CS/CMS 139, Advanced Algorithms
- Winter 2017: CS/CMS 139, Advanced Algorithms.
- Fall 2016: CS120, Quantum Cryptography. Also offered as an EdX course!
- Spring 2016: CS 101, Introduction to modern cryptography
- Winter 2016: CS/CMS 139, Advanced Algorithms
- Spring 2015: CS/CMS 139, Advanced Algorithms
- Fall 2014: CS286, Seminar in Computer Science. Topic: around the Quantum PCP conjecture

- The circuit model
- Delegation of quantum computations
- Quantum games and self-testing
- Interactive proofs with entangled provers
- See the course page for more slides and notes.

- Streaming algorithms and concentration inequalities
- The Experts/Multiplicative Weights Algorithm and Applications
- Semidefinite Programming
- Spectral Graph Theory
- Solving systems of linear equations
- Learning theory

- Week 0: Basics of quantum information
- Week 4: Privacy amplification
- Week 10: Delegating quantum computations

- Lecture 1: The PCP theorem, hardness of approximation, and multiplayer games
- Lecture 2: Equivalence of two statements of PCP, and a toy theorem
- Lecture 3: The linearity test and low-degree extensions
- Lecture 4: Dinurâ€™s Proof of the PCP Theorem
- Lecture 5-6: Introduction to Hamiltonian Complexity, QMA-completeness of the Local Hamiltonian problem
- Lecture 7: Quantum PCP conjectures
- Lecture 8: A variant of QPCP for multiplayer entangled games
- Lecture 9: Tensor networks and the detectability lemma
- Lecture 10: Detectability Lemma, Decay of Correlations, and Area Law
- Lecture 11: 1-D Area Law
- Lecture 12: Classical and Quantum de Finetti theorems
- Lecture 13: Quantum de Finetti Theorems
- Lecture 14: Quantum de Finetti Theorems II
- Lecture 15: Tsirelsonâ€™s characterization of XOR games
- Lecture 16: 3-player entangled games and the role of monogamy
- Lecture 17: NP-hardness of computing the entangled value