Chapter 18: Quantum Error Correction

Part VI: Quantum Information

No-Cloning Theorem

The no-cloning theorem (Wootters & Zurek, 1982) states that it is impossible to create an identical copy of an arbitrary unknown quantum state:

\( \nexists U : U(|\psi\rangle \otimes |0\rangle) = |\psi\rangle \otimes |\psi\rangle \quad \forall |\psi\rangle \)

This seems to make error correction impossible โ€” classical codes work by copying bits. The key insight is that quantum error correction encodes information in entanglement, not copies. Errors are detected without measuring (and collapsing) the logical qubit.

The 3-Qubit Bit-Flip Code

The simplest quantum error correcting code maps logical states into entangled three-qubit states:

\( |\bar{0}\rangle = |000\rangle, \quad |\bar{1}\rangle = |111\rangle \)

\( |\bar{\psi}\rangle = \alpha|000\rangle + \beta|111\rangle \)

Error detection: Measure the stabilizers\(Z_1 Z_2\) and \(Z_2 Z_3\). These commute with the logical qubit but anticommute with bit-flip errors. Results reveal which qubit flipped without revealing the logical state.

Correction: Apply \(X\) to the identified qubit. Corrects any single-qubit bit flip with probability\(1 - 3p^2 + 2p^3 \approx 1 - 3p^2\) for small \(p\).

Shor's 9-Qubit Code

Peter Shor (1995) constructed the first code correcting arbitrary single-qubit errors by concatenating a 3-qubit bit-flip code with a 3-qubit phase-flip code:

\( |\bar{0}\rangle = \frac{1}{2\sqrt{2}}(|000\rangle+|111\rangle)^{\otimes 3} \)

\( |\bar{1}\rangle = \frac{1}{2\sqrt{2}}(|000\rangle-|111\rangle)^{\otimes 3} \)

Since any single-qubit error is a linear combination of \(I, X, Y, Z\)operators, correcting X errors and Z errors independently corrects all errors. This uses 9 physical qubits to protect 1 logical qubit โ€” the [[9,1,3]] code.

Stabilizer Formalism & Surface Codes

Gottesman (1997) introduced the stabilizer formalism: a code space is defined as the +1 eigenspace of a set of Pauli operators (stabilizers). This allows efficient classical description of exponentially large quantum codes.

Surface codes (Kitaev, 1997; Fowler et al., 2012) arrange qubits on a 2D lattice with local stabilizer checks. Key properties:

  • Threshold: \(p_{\text{th}} \approx 1\%\) โ€” highest known for 2D local codes
  • Below threshold: logical error rate \(p_L \propto \exp(-\alpha L)\) for distance-\(L\) code
  • Only requires nearest-neighbor interactions โ€” physically realistic
  • Currently the leading platform for fault-tolerant quantum computation

Surface Code Lattice (5ร—5)

Data qubitZ stabilizerX stabilizer

Surface code: data qubits (purple circles) with alternating X and Z stabilizer plaquettes. Logical operators run along paths connecting opposite boundaries.

Python: 3-Qubit Code Simulation

Simulate the 3-qubit bit-flip code with Monte Carlo trials, compare logical vs physical error rates, and show surface code distance scaling.

Python
script.py158 lines

Click Run to execute the Python code

Code will be executed with Python 3 on the server