Code family
Rotated surface code
A planar CSS stabilizer code on a rotated square lattice using d^2 data qubits per logical qubit for distance d. The registry's baseline decoder comparisons, threshold sweeps and analysis dataset are all measured on this family.
Assumptions
Structure
- Variants measured
- memory (Z-basis)
- Layouts
- rotated planar lattice, d^2 data qubits
- Protocols
- memory
- Check weight
- 4 in the bulk, 2 on boundaries
- Syndrome formats in use
- Stim detection events, unpacked bits (pymatching, beliefmatching)
- Stim detection events, bit-packed little-endian (tesseract via sinter)
Measured coordinates
Distances (coordinates, not pages):
Noise models: circuit-level-depolarizing
Current runs: 96 (24 superseded, kept reachable)
Decoders measured on this family
- BeliefMatching surface-code decoderbelief propagation + MWPM
- MWPM surface-code decoder (PyMatching) — official baselineminimum-weight perfect matching
- Tesseract surface-code decodertesseract most-likely-error
Datasets
- Surface-code MWPM baseline: logical error rates — 1 version, lineage names this family's runs.
- Surface-code MWPM threshold sweep: 72-point multi-seed analysis table — 1 version, lineage names this family's runs.
Threshold analysis
Measured logical error rate per distance, seeds pooled per cell (exact for binomial counts), error bars are 95% Wilson intervals. All values are measured — nothing here is modelled or extrapolated.
Threshold estimate
pth ≈ 0.84% — median of the adjacent-distance curve crossings; the spread of those crossings is 0.65%–0.92%. The spread is a range of interpolated crossings, not a fitted confidence interval.
- d=3 × d=5 curves cross at p ≈ 0.65%
- d=5 × d=7 curves cross at p ≈ 0.84%
- d=7 × d=9 curves cross at p ≈ 0.92%
Per-cell data with source runs (33 cells, every point traceable)
Decoder comparison on identical samples
All three decoders consumed byte-identical Stim detector samples (SHA shown per configuration; the harness refuses to compare a decoder that cannot prove it consumed the shared bytes). Accuracy values are measured counts; latency, throughput and memory are measured on macOS-15.6.1-arm64-arm-64bit / python 3.12.12 and do not transfer to other machines. Pauli/Stim regime only.
| Decoder | Logical errors / decoded | LER (95% Wilson) | Abstentions / coverage | Latency p50 / p95 / p99 (µs) | Throughput (shots/s) | Peak RSS |
|---|---|---|---|---|---|---|
| beliefmatchingvunknown | 153 / 5,000 | 3.06e-2 [2.62e-2, 3.57e-2] | 0 / 100.0% | 30.5 / 279.0 / 295.2 | 20,502 | 73 MiB |
| pymatching-mwpmv2.4.0 | 151 / 5,000 | 3.02e-2 [2.58e-2, 3.53e-2] | 0 / 100.0% | 2.6 / 3.6 / 4.7 | 3,725,321 | 72 MiB |
| tesseractvunknown | 145 / 5,000 | 2.90e-2 [2.47e-2, 3.40e-2] | 0 / 100.0% | 103.5 / 465.3 / 728.4 | 5,864 | 38 MiB |
Raw rows: surface-code-mwpm-decoder-comparison-timing — checksummed inline content with lineage to the comparison runs.
Hardware suitability
Evidence-based, per modality. A cell reads UNKNOWN when this registry cites no measurement for it — an absent citation is recorded as absence, never guessed. Structural cells (connectivity, check weight) follow from the code definition.
| Modality | Connectivity | Measurement / reset | Check weight | Bias | Leakage / loss | Feed-forward | Realizations | Citations |
|---|---|---|---|---|---|---|---|---|
| Superconducting | 2D nearest-neighbor grid matches the code natively | fast mid-circuit measurement and reset demonstrated | weight-4 checks map to one ancilla per plaquette | largely unbiased noise; the plain (non-XZZX) code assumes this | leakage is real and needs explicit removal circuits | real-time decoding demonstrated | d=3/5 suppression (Google 2023); d=3/5/7 below threshold (Google 2024) | arXiv:2207.06431arXiv:2408.13687 |
| Neutral atom | reconfigurable arrays exceed the 2D requirement | mid-circuit readout is the hard part; loss dominates | weight-4 checks fit; transversal operation between patches shown | UNKNOWN | atom loss is the dominant error channel and needs detection | UNKNOWN | d=3..7 surface-code operation on a reconfigurable array (Bluvstein et al. 2023) | arXiv:2312.03982 |
| Trapped ion | all-to-all within a trap exceeds the 2D requirement | high-fidelity mid-circuit measurement demonstrated in other QEC codes | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | published trapped-ion memory experiments cited in this registry are for other code families; no rotated-surface-code realization is cited here |
| Photonic / bosonic | fusion-based and GKP-concatenated proposals exist (the Zoo lists GKP-surface as a cousin) | UNKNOWN | UNKNOWN | GKP noise is structured; plain-code fit is an open question here | photon loss dominates | UNKNOWN | UNKNOWN | no realization or measured cell is cited in this registry |
| Spin qubits | 2D layouts proposed; large grids not yet cited | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | no rotated-surface-code experiment is cited in this registry |
| Majorana | measurement-based architectures proposed | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | UNKNOWN | no experimental realization is cited in this registry |
Citations and provenance
- Error Correction Zoo entry — https://errorcorrectionzoo.org/c/rotated_surface
- Kitaev, Fault-tolerant quantum computation by anyons — arXiv:quant-ph/9707021
- Fowler, Mariantoni, Martinis, Cleland, Surface codes: Towards practical large-scale quantum computation — arXiv:1208.0928
- Google Quantum AI, Suppressing quantum errors by scaling a surface code logical qubit — arXiv:2207.06431
- Google Quantum AI, Quantum error correction below the surface code threshold — arXiv:2408.13687
- Bluvstein et al., Logical quantum processor based on reconfigurable atom arrays — arXiv:2312.03982
Zoo entry rotated_surface retrieved 2026-08-03. Suggested citation: "Rotated surface code", The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2026. https://errorcorrectionzoo.org/c/rotated_surface. Error Correction Zoo content is CC-BY-SA 4.0; this page links and cites it and copies no prose.