Skip to content
lectern.tv

Graduate Computational Complexity Theory

Prof. Ryan O'Donnell

Intensive PhD-level complexity theory sequence examining circuit complexity, randomized computation, interactive proofs, PCP theorem foundations, pseudorandomness, and hardness amplification.

Start Lecture 118 lectures · 24h total
Syllabus progress0 of 18 watched
CMU 15-855: Graduate Computational Complexity Theory

Syllabus

18
Lecture 1· 1:20:23

Lecture 1: Course Introduction and Overview (15-855)

This introductory lecture surveys the fundamental scope and methodologies of graduate computational complexity theory, referencing core concepts from Arora-Barak Chapters 1, 2, and 4.

Lecture 2· 1:21:06

Lecture 2: Hierarchy Theorems (Time, Space, and Nondeterministic) (15-855)

This session delves into the Hierarchy Theorems, establishing distinct complexity classes based on time, space, and nondeterministic resource bounds as detailed in Arora-Barak.

Lecture 3· 1:20:29

Lecture 3: Hopcroft--Paul--Valiant Theorem (15-855)

Focuses on the Hopcroft Paul Valiant Theorem, examining its implications for efficient simulation of multi-tape Turing machines by single-tape machines.

Lecture 4· 1:19:50

Lecture 4: Circuits (15-855)

Explores the theory of Boolean circuits as a model of computation, including definitions, size, depth, and connections to complexity classes, drawing from Arora-Barak.

Lecture 5· 1:20:55

Lecture 5: Probabilistic Complexity Classes (15-855)

This lecture introduces fundamental probabilistic complexity classes such as RP, coRP, ZPP, and BPP, analyzing their definitions and interrelationships using randomized algorithms.

Lecture 6· 1:17:49

Lecture 6: Quasilinear Cook--Levin Theorem (15-855)

Examines the Quasilinear Cook-Levin Theorem, focusing on its construction and the reduction of any problem in NP to SAT in quasilinear time.

Lecture 7· 1:19:11

Lecture 7: The Polynomial Time Hierarchy (15-855)

Investigates the Polynomial Time Hierarchy (PH), defining its levels _kP and _kP through oracle Turing machines and alternating quantifiers.

Lecture 8· 1:22:04

Lecture 8: Oracles, and the Polynomial Time Hierarchy vs. circuits (15-855)

Explores the role of oracles in complexity theory and contrasts the Polynomial Time Hierarchy with the capabilities of bounded-depth circuits.

Lecture 9· 1:31:30

Lecture 9: Time/Space Tradeoffs for SAT (15-855)

Analyzes fundamental time-space tradeoffs for solving the Satisfiability problem, exploring different computational models and their resource requirements.

Lecture 10· 1:22:37

Lecture 10: Introduction to Arthur-Merlin classes, MA and AM (15-855)

Introduces the Arthur-Merlin (AM) and Merlin-Arthur (MA) complexity classes, formalizing interactive proof systems with probabilistic verifiers.

Lecture 11· 1:21:18

Lecture 11: More on constant-round interactive proof systems (15-855)

Expands on constant-round interactive proof systems, demonstrating their power and limitations in recognizing languages efficiently with probabilistic interaction.

Lecture 12· 1:19:48

Lecture 12: Approximate counting (15-855)

Addresses the problem of approximate counting for computationally hard problems, discussing techniques for estimating the size of solution sets within polynomial time.

Lecture 13· 1:16:15

Lecture 13: Valiant--Vazirani Theorem, and Exact Counting (#P) (15-855)

Presents the Valiant-Vazirani Theorem, establishing a connection between NP and randomized exact counting (#P), providing insights into counting complexity.

Lecture 14· 1:18:15

Lecture 14: Toda's 1st Theorem and the Permanent (15-855)

This lecture introduces Toda's First Theorem, demonstrating that the Polynomial Time Hierarchy is contained within P^#P, and discusses the complexity of computing the Permanent.

Lecture 15· 1:13:35

Lecture 20: Permanent is #P-complete (15-855)

A detailed proof establishes that computing the Permanent of a matrix is a #P-complete problem, underscoring its significant computational hardness.

Lecture 16· 1:20:29

Lecture 15: Algebraic Circuit Complexity (15-855)

Explores algebraic circuit complexity, analyzing the computation of polynomials over various fields using algebraic circuits and related lower bound techniques.

Lecture 17· 1:20:19

Lecture 16: Instance Checking and the Permanent (15-855)

Examines instance checking techniques in the context of the Permanent problem, exploring methods to verify specific computations efficiently.

Lecture 18· 1:18:47

Lecture 17: IP = PSPACE (15-855)

Demonstrates the seminal result that the class of languages with Interactive Proof systems (IP) is precisely equivalent to Polynomial Space (PSPACE).