Course Identification

Quantum error correction

Lecturers and Teaching Assistants

Prof. Thomas Vidick

Course Schedule and Location

Second Semester
Tuesday, 11:15 - 13:00, Ziskind, Rm 155

Field of Study, Course Type and Credit Points

Mathematics and Computer Science: Lecture; Elective; Regular; 2.00 points




My goal is to make the course as accessible as possible. If unsure if you have the required background, talk to the instructor at the start of term. Here is a rough idea of helpful background:

  • The course assumes a solid grasp of finite-dimensional linear algebra (vector spaces, unitary operations, tensor products), which is necessary for quantum computing.
  • No knowledge of quantum mechanics per se is required.
  • Some familiarity with the basic notions of quantum computation: qubits, quantum gates, measurements, is required; for the student with no background I will provide "catch-up" resources that can be read in the weeks before term starts. 
  • Basic prior knowledge of the classical theory of error-correction (definition of a linear code; distance; simple constructions) is helpful but not required; here again elementary reading resources will be provided as catch-up when needed.
  • Notions of classical complexity theory will be helpful to follow the last 20% of the course (item 4 in the syllabus).



Language of Instruction


Attendance and participation

Expected and Recommended

Grade Type

Pass / Fail

Grade Breakdown (in %)


Evaluation Type

No final exam or assignment

Scheduled date 1


Estimated Weekly Independent Workload (in hours)



This course will cover the theory of quantum error correction. We will start with the basics: how to model errors on a quantum computer, what is a quantum error correcting codes, elementary examples and constructions. We will progressively work our way towards more advanced code constructions and in particular constructions of good quantum low-density parity-check codes. We will illustrate unique quantum features of these constructions by discussing entanglement and applications to quantum complexity theory.

  1. Basics of quantum error correction: Modeling errors on a quantum computer. Fundamental criteria for error correction. Distance of a quantum code, and elementary bounds. Examples. Stabilizer codes and the CSS construction.

  2. Fault tolerant computation: how to encode, compute and decode with errors. The threshold theorem. 

  3. Constructions: The toric code and surface codes. The Tillich-Zemor hypergraph product. Quantum tanner codes. Good quantum LDPC codes. 

  4. Applications in quantum complexity theory: Entanglement in quantum codewords. The No Low-Energy Trivial States (NLTS) theorem. Relation to the quantum PCP conjecture.

Learning Outcomes

Students in the course will gain an understanding of the standard model of errors for quantum computation; they will discover constructions of quantum codes and their limitations; and they will develop insights into the complex nature of entanglement in quantum code-states.

Reading List

For a high-level introduction: “Quantum error correction,” by Brun. Available at

For a somewhat more physical perspective: Chapter 7 from Preskill’s Phys 219 lecture notes, available at The preceding chapters give extensive background.

Fault tolerance: Chapter 5 in the book by Brun and Lidar,