NAT3045: Quantum Error Correction and Fault Tolerance (MPQ/TUM, Summer 2026)
NAT3045: Quantum Error Correction and Fault Tolerance (MPQ/TUM, Summer 2026)
Course Description:
Introduction to the theory of quantum error correction and fault tolerance, especially in the context of how these techniques enable quantum technologies with noisy devices. There will be an emphasis of both fundamentals of designing error correction codes and protocols, as well as their applications to quantum computation.
Course Outline
Part 1: Error correction fundamentals
Shor’s 9-qubit code, constructing encoders, decoders. Entropy removal.
Knill-Laflamme conditions for correctability and detectability of errors, implications.
Classical linear codes and Stabiliser Formalism.
Part 2: Constructing error correcting codes
CSS codes.
GF(4) codes, Quantum Hamming codes.
Topological codes - Toric code, Surface codes with boundaries, defects.
Product codes and Hypergraph product codes, Introduction to quantum LDPC codes.
Part 3: Encoded computation and Fault tolerance
Fault tolerant gates, encoder and decoders.
Logical operations in planar codes, lattice surgery.
Threshold theorem.
Recent implementations of fault tolerant computation.
References
Daniel Gottesman, Surviving as a quantum computer in a classical world (U. Maryland).
Nielson and Chuang, Quantum Computation and Quantum Information.
John Wright, Quantum coding theory (lecture notes, U. Berkeley).
When and where
Lectures: Monday/Thursday, 15:00 - 16:30 @ MPQ, Herbert Walther Lecture Hall.
Exercises: Tuesday/Wednesday, 16:00 - 17:00 @ MPQ, Theory seminar room (B2.46)
Zoom for Lectures (only with previous permission): https://eu02web.zoom-x.de/j/3598685293
Course Notes
Preliminaries: Quantum Information
Part 1: Error correction fundamentals
Part 2: Designing error correcting codes
Part 3: Encoded computation and Fault tolerance
Lecture Slides
Lecture 1: Repition code, Shor's 9 qubit code [Slides]
Lecture 2: Shor's 9 qubit code, Knill-Laflamme conditions [Slides]
Lecture 3: Knill-Laflamme condition [Slides]
Lecture 4: Knill-Laflamme condition, Classical linear codes [Slides]
Lecture 5: Classical Linear codes [Slides]
Lecture 6: Stabiliser formalism [Slides]
Lecture 7: Stabiliser formalism:detectable and correctable errors [Slides]
Lecture 8: Stabiliser formalism:detectable and correctable errors, logical Paulis [Slides]
Lecture 9: Stabiliser formalism: logical Paulis [Slides]
Lecture 10: CSS codes [Slides]
Lecture 11: CSS codes, Concatenated codes [Slides]
Lecture 12: Concatenated codes, Toric code [Slides]
Lecture 13: Toric code [Slides]
Lecture 14: Planar codes [Slides]
Lecture 15: Rotated Surface codes, Chain Complexes [Slides]
Lecture 16: Chain Complex, Product Complexes [Slides]
Lecture 17: Product Complexes, Hypergraph Product Codes [Slides]
Lecture 18: Hypergraph Product Codes, Good classical LDPC codes [slides]
Lecture 19: Good classical LDPC codes, High-rate hypergraph product codes [slides]
Lecture 20: Fault tolerance [slides]
Lecture 21: Fault tolerance, Transversal gates [slides]
Lecture 22: Transversal gates [slides]
Lecture 23: Transversal gates, Fault-tolerant Error Correction [slides]
Lecture 24: Fault-tolerant Error Correction [slides]
Lecture 25: Fault-tolerant State preparation [slides]
Tutorials