\([[4,2,2]]\) CSS code[1]


Four-qubit CSS stabilizer code with generators \(\{XXXX, ZZZZ\} \) and codewords \begin{align} \begin{split} |\overline{00}\rangle = (|0000\rangle + |1111\rangle)/\sqrt{2}~{\phantom{.}}\\ |\overline{01}\rangle = (|0011\rangle + |1100\rangle)/\sqrt{2}~{\phantom{.}}\\ |\overline{10}\rangle = (|0101\rangle + |1010\rangle)/\sqrt{2}~{\phantom{.}}\\ |\overline{11}\rangle = (|0110\rangle + |1001\rangle)/\sqrt{2}~. \end{split} \end{align}

Its subcode \(\{|\overline{00}\rangle,|\overline{01}\rangle\}\) is a \([[4,1,2]]\) code [2], whose \(\pm\)-basis codewords can be written as \begin{align} |\overline{\pm}\rangle = \frac{1}{2}(|00\rangle \pm |11\rangle)^{\otimes 2}~.\\ \end{align} This code can be thought of as a concatenation of a two-qubit bit-flip with a two-qubit phase-flip code. The other subcode \(\{|\overline{10}\rangle,|\overline{11}\rangle\}\) [3] has also been studied against amplitude-damping noise.


Detects a single-qubit error [1] or single erasure [4]. Not able to correct arbitrary single-qubit errors because \( \lfloor \frac{d-1}{2} \rfloor =0 \). Approximately corrects a single amplitude damping error [2].

Transversal Gates

Transversal Pauli, Hadamard, and two-qubit \(R\) gates [5].

Fault Tolerance

Preparation of certain states along with transversal gates can be performed fault-tolerantly, but requires post-selection because the code cannot correct errors [5].


Trapped-ion device by IonQ [6].Logical state preparation and flag-qubit error correction realized in superconducting-circuit devices by IBM [7][8].


Concatenating \([[4,2,2]]\) code with surface code can generate 2D topological code with a reasonable circuit-based threshold [9].



  • Quantum parity code (QPC) — \([[4,1,2]]\) subcode \(\{|\overline{00}\rangle,|\overline{01}\rangle\}\) is the smallest member of the sub-family of \([[m^2,1,m]]\) QPC codes.
  • \([[5,1,3]]\) perfect code — \([[4,2,2]]\) can be derived from \([[5,1,3]]\) code using a protocal that converts \([[n,k,d]]\) code into an \([[n-1, k+1, d-1]]\) code; see Sec. 3.5 in Gottesman [10].
  • Quantum polar code — \([[4,2,2]]\) code is a small quantum polar code [11].
  • Approximate quantum error-correcting code (AQECC) — \([[4,1,2]]\) subcodes \(\{|\overline{00}\rangle,|\overline{10}\rangle\}\) [2] and \(\{|\overline{01}\rangle,|\overline{11}\rangle\}\) [3] approximately correct a single amplitude damping error.
  • Heavy-hexagon code — The \(d=2\) heavy-hexagonal code is closely related to the \([[4,1,2]]\) code.

Zoo code information

Internal code ID: stab_4_2_2

Your contribution is welcome!

on github.com (edit & pull request)

edit on this site

Zoo Code ID: stab_4_2_2

Cite as:
“\([[4,2,2]]\) CSS code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/stab_4_2_2
@incollection{eczoo_stab_4_2_2, title={\([[4,2,2]]\) CSS code}, booktitle={The Error Correction Zoo}, year={2022}, editor={Albert, Victor V. and Faist, Philippe}, url={https://errorcorrectionzoo.org/c/stab_4_2_2} }
Permanent link:


L. Vaidman, L. Goldenberg, and S. Wiesner, “Error prevention scheme with four particles”, Physical Review A 54, R1745 (1996). DOI; quant-ph/9603031
D. W. Leung et al., “Approximate quantum error correction can lead to better codes”, Physical Review A 56, 2567 (1997). DOI; quant-ph/9704002
G. Alber et al., “Stabilizing Distinguishable Qubits against Spontaneous Decay by Detected-Jump Correcting Quantum Codes”, Physical Review Letters 86, 4402 (2001). DOI; quant-ph/0103042
M. Grassl, T. Beth, and T. Pellizzari, “Codes for the quantum erasure channel”, Physical Review A 56, 33 (1997). DOI; quant-ph/9610042
Daniel Gottesman, “Quantum fault tolerance in small experiments”. 1610.03507
N. M. Linke et al., “Fault-tolerant quantum error detection”, Science Advances 3, (2017). DOI; 1611.06946
M. Takita et al., “Experimental Demonstration of Fault-Tolerant State Preparation with Superconducting Qubits”, Physical Review Letters 119, (2017). DOI; 1705.09259
Edward H. Chen et al., “Calibrated decoders for experimental quantum error correction”. 2110.04285
B. Criger and B. Terhal, “Noise thresholds for the [4,2,2]-concatenated toric code”, Quantum Information and Computation 16, 1261 (2016). DOI
Daniel Gottesman, “Stabilizer Codes and Quantum Error Correction”. quant-ph/9705052
Kyungjoo Noh, Leung code as quantum polar code, 2017.

Cite as:

“\([[4,2,2]]\) CSS code”, The Error Correction Zoo (V. V. Albert & P. Faist, eds.), 2022. https://errorcorrectionzoo.org/c/stab_4_2_2

Github: https://github.com/errorcorrectionzoo/eczoo_data/tree/main/codes/quantum/qubits/small/stab_4_2_2.yml.