Introduction to surface codes#
So far, we have convinced ourselves about the necessity of protecting the qubits from both bit-flip and phase-flip errors and demonstrated this protection using one-dimensional (1D) repetition codes.
Surface codes belong to a family of error-correcting codes which store and protect quantum information in the geometry of surfaces. They are embedded in a 2D nearest-neighbor grid. Unlike repetition codes, which only have one type of stabilizer at a time, surface codes have both X-type (\(X\otimes X\otimes X\otimes X\)) and Z-type (\(Z\otimes Z\otimes Z\otimes Z\)) stabilizers in the grid.
Similar to repetition codes, the logical state is encoded across a set of physical data qubits (which are the physical qubits) in the grid. The qubits that check the parities of the stabilizers are known as the auxiliary qubits (or measurement qubits).
Surface codes were inspired by the work of Kitaev. Initially, Kitaev (ref [1]) proposed the toric codes where the qubits were laid out on a torus (donut). However, the periodic boundary conditions of the torus make the hardware implementation of such a code challenging. As a historical aside, it is important to note that the original toric code encoded two logical qubits, whereas the surface code encodes one logical qubit.
The planar surface code is obtained from the toric code by removing the periodic boundary conditions. In the literature, you will sometimes see the planar surface represented as a \([[(d^{2}+(d-1)^{2}),1,d]]\) code because a distance-\(d\) surface code encodes 1 logical qubit using \(d^{2}+(d-1)^{2}\) physical qubits.
In the next few chapters, we will consider the planar surface code and construct a threshold plot from scratch.
References#
Kitaev, Fault‑tolerant quantum computation by anyons (1997). arXiv:quant‑ph/9707021.
Dennis, Kitaev, Landahl, Preskill, Topological quantum memory (2002). arXiv:quant‑ph/0110143.
Bravyi & Kitaev, Quantum codes on a lattice with boundary (1998). arXiv:quant‑ph/9811052.
Calderbank & Shor, Good quantum error-correcting codes exist (1996). arXiv:9512032.
Steane, Multiple particle interference and quantum error correction (1995). arXiv:9601029.
Fowler et al., Surface codes: Towards practical large‑scale quantum computation (2012). arXiv:1208.0928.
Version History#
v0: Aug 14, 2025, github/@ESMatekole
v1: Sep 12, 2025, github/@aasfaw