Quantum error correction and fault tolerance: A comprehensive tutorial
arXiv preprint (2026), 209 pages
* Equal contribution

In short
A 209-page guided introduction to quantum error correction. It starts from the basic ideas and works up to the code families and fault-tolerance techniques behind current research. It grew out of an online lecture series in which I taught bosonic codes.
Why it matters
Noise is one of the main obstacles to building useful quantum computers, and quantum error correction (QEC) is the framework for dealing with it. QEC is harder than its classical counterpart because quantum information cannot be copied, and measuring it directly destroys it. The field now moves quickly in both theory and experiment, and its literature is spread across physics, computer science and coding theory, so it is hard for newcomers to know where to start.
What we did
With Daniel Spencer, Andrew Tanggara, Zeen Sun, Tobias Haug, Derek Khu and Kishor Bharti, I co-wrote a tutorial that builds working intuition step by step. It begins with codes, syndromes, stabilizers and decoding. It then covers topological and subsystem codes, bosonic and qudit codes, dynamical codes and quantum LDPC codes, and ends with bounds and fault-tolerant computation. The aim is to explain both what the main objects are and how they are used in practice.
It is written for newcomers looking for a first path into QEC and for researchers who want one coherent reference. The text is based in part on the Asia-Pacific QEC tutorial series, which ran online from August to December 2025 and is archived on YouTube. I taught its two lectures on bosonic codes.
Talks
-
Oct 2025
Tutorials on bosonic quantum error correction
Related
Cite
@misc{spencer2026quantum,
title = {Quantum error correction and fault tolerance: A comprehensive tutorial},
author = {Spencer, Daniel J. and Jain, Shubham P. and Tanggara, Andrew and Sun, Zeen and Haug, Tobias and Khu, Derek and Bharti, Kishor},
year = {2026},
eprint = {2605.29137},
archivePrefix = {arXiv},
primaryClass = {quant-ph}
}