Here is a list of quantum subsystem codes.
Code | Description |
---|---|
3D subsystem surface code | Subsystem generalization of the surface code on a 3D cubic lattice with stabilizer generators of weight at most three. |
3D surface code | A variant of the Kitaev surface code on a 3D lattice. The closely related solid code [1] consists of several 3D surface codes stitched together in a way that the distance scales faster than the linear size of the system. |
Abelian TQD stabilizer code | Modular-qudit stabilizer code whose codewords realize 2D modular gapped Abelian topological order. The corresponding anyon theory is defined by an abelian group and a Type-III group cocycle that can be decomposed as a product of Type-I and Type-II group cocycles; see [2; Sec. IV.A]. |
Abelian quantum double stabilizer code | Modular-qudit stabilizer code whose codewords realize 2D modular gapped Abelian topological order with trivial cocycle. The corresponding anyon theory is defined by an abelian group. All such codes can be realized by a stack of modular-qudit surface codes because all abelian groups are Kronecker products of cyclic groups. |
Abelian topological code | Code whose codewords realize topological order associated with an Abelian anyon theory, equivalently, a unitary braided fusion category which is an Abelian group under fusion [3]. |
Bacon-Shor code | CSS subsystem stabilizer code defined on an \(m_1 \times m_2\) lattice of qubits. It is said to be symmetric when \(m_1=m_2\). The \(X\)-type and \(Z\)-type stabilizers defined as \(X\) and \(Z\) operators acting on all qubits on adjacent columns and rows, respectively. Let \(O_{i,j}\) denote an operator acting on the qubit at a position \((i,j)\) on the lattice, with \(i\in\{0,1,\ldots ,m_1-1\}\) and \(j\in\{0,1,\ldots,m_2-1\}\). The code's stabilizer group is \begin{align} \mathsf{S}=\langle X_{i,*}X_{i+1,*},Z_{*,j}Z_{*,j+1}\rangle~, \tag*{(1)}\end{align} with generators expressed as products of nearest-neightbour 2-qubit gauge operators, \begin{align} \begin{split} X_{i,*}X_{i+1,*}= \bigotimes_{k=0}^{m_2-1} X_{i,k}X_{i+1,k} \\ Z_{*,j}Z_{*,j+1}=\bigotimes_{k=0}^{m_1-1} Z_{k,j}Z_{k,j+1}~. \end{split} \tag*{(2)}\end{align} Syndrome extraction can be done by measuring these gauge operators, which are on fewer qubits and local. |
Bravyi-Bacon-Shor (BBS) code | An \([[n,k,d]]\) CSS subsystem stabilizer code generalizing Bacon-Shor codes to a larger set of qubit geometries. Defined through a binary matrix \(A\) such that physical qubits live on sites \((i,j)\) whenever \(A_{i,j}=1\). The gauge group is generated by 2-qubit operators, including \(XX\) interations between any two qubits sharing a column in \(A\), and \(ZZ\) interations between two qubits sharing a row. The code parameters are: \(n=\sum_{i,j}A_{i,j}\), \(k=\text{rank}(A)\), and the distance is the minimum weight of any row or column. |
Chiral semion subsystem code | Modular-qudit subsystem stabilizer code with qudit dimension \(q=4\) that is characterized by the chiral semion topological phase. Admits a set of geometrically local stabilizer generators on a torus. |
Clifford-deformed surface code (CDSC) | A generally non-CSS derivative of the surface code defined by applying a constant-depth Clifford circuit to the original (CSS) surface code. Unlike the surface code, CDSCs include codes whose thresholds and subthreshold performance are enhanced under noise biased towards dephasing. Examples of CDSCs include the XY code, XZZX code, and random CDSCs. |
Color code | A family of abelian topological CSS stabilizer codes defined on a \(D\)-dimensional lattice which satisfies two properties: The lattice is (1) a homogeneous simplicial \(D\)-complex obtained as a triangulation of the interior of a \(D\)-simplex and (2) is \(D+1\)-colorable. Qubits are placed on the \(D\)-simplices and generators are supported on suitable simplices [4]. For 2-dimensional color code, the lattice must be such that it is 3-valent and has 3-colorable faces, such as a honeycomb lattice. The qubits are placed on the vertices and two stabilizer generators are placed on each face [5]. |
Double-semion stabilizer code | Modular-qudit stabilizer code with qudit dimension \(q=4\) that is characterized by the double semion topological phase. The code can be obtained from the \(\mathbb{Z}_4\) surface code by condensing the anyon \(e^2 m^2\) [6]. Originally formulated as a non-stabilizer qubit code [7]. |
Doubled color code | Family of \([[2t^3+8t^2+6t-1,1,2t+1]]\) subsystem color codes (with \(t\geq 1\)), constructed using a generalization of the doubling transformation [8], that admit a Clifford + \(T\) transversal gate set using gauge fixing. |
Entanglement-assisted (EA) operator QECC | Subsystem QECC whose encoding and decoding utilizes pre-shared entanglement between sender and receiver. |
Five-qubit perfect code | Five-qubit stabilizer code that is the smallest qubit stabilizer code to correct a single-qubit error. Its generators that are symmetric under cyclic permutation of qubits, \begin{align} \begin{split} S_1 &= IXZZX \\ S_2 &= XZZXI \\ S_3 &= ZZXIX \\ S_4 &= ZXIXZ~. \end{split} \tag*{(3)}\end{align} |
Heavy-hexagon code | Subsystem stabilizer code on the heavy-hexagonal lattice that combines Bacon-Shor and surface-code stabilizers. Encodes one logical qubit into \(n=(5d^2-2d-1)/2\) physical qubits with distance \(d\). The heavy-hexagonal lattice allows for low degree (at most 3) connectivity between all the data and ancilla qubits, which is suitable for fixed-frequency transom qubits subject to frequency collision errors. |
Honeycomb Floquet code | Floquet code based on the Kitaev honeycomb model [9] whose logical qubits are generated through a particular sequence of measurements. |
Kitaev chain code | An \([[n,1,1]]_{f}\) Majorana stabilizer code forming the ground-state of the Kitaev Majorana chain (a.k.a. Kitaev Majorana wire) in its fermionic topological phase, which is equivalent to the 1D quantum Ising model in the symmetry-breaking phase via the Jordan-Wigner transformation. The code is usually defined using the algebra of two anti-commuting Majorana operators called Majorana zero modes (MZMs) or Majorana edge modes (MEMs). |
Kitaev honeycomb code | Code whose logical subspace is labeled by different fusion outcomes of Ising anyons present in the nonabelian topological phase of the Kitaev honeycomb model [9]. Each logical qubit is constructed out of four Majorana operators, which admit braiding-based gates due to their nonabelian statistics and which can be used for topological quantum computation. |
Kitaev surface code | A family of abelian topological CSS stabilizer codes whose generators are few-body \(X\)-type and \(Z\)-type Pauli strings associated to the stars and plaquettes, respectively, of a cellulation of a two-dimensional surface (with a qubit located at each edge of the cellulation). Toric code often either refers to the construction on the two-dimensional torus or is an alternative name for the general construction. The construction on surfaces with boundaries is often called the planar code [10–12]. Codewords correspond to ground states of the surface code Hamiltonian, and error operators create or annihilate pairs of anyonic charges or vortices. |
Matching code | Member of a class of qubit stabilizer codes based on the abelian phase of the Kitaev honeycomb model. |
Modular-qudit surface code | Also known as the \(\mathbb{Z}_q\) surface code. Extension of the surface code to prime-dimensional [13,14] and more general modular qudits [15]. Stabilizer generators are few-body \(X\)-type and \(Z\)-type Pauli strings associated to the stars and plaquettes, respectively, of a tessellation of a two-dimensional surface. Since qudits have more than one \(X\) and \(Z\)-type operator, various sets of stabilizer generators can be defined. Ground-state degeneracy and the associated phase depends on the qudit dimension and the stabilizer generators. |
Quantum parity code (QPC) | Also called a generalized Shor code [16]. A \([[m_1 m_2,1,\min(m_1,m_2)]]\) CSS code family obtained from concatenating an \(m_1\)-qubit phase-flip repetition code with an \(m_2\)-qubit bit-flip repetition code. Logical codewords are \begin{align} \begin{split} |\overline{0}\rangle&=\frac{1}{2^{m_2/2}}\left(|0\rangle^{\otimes m_1}+|1\rangle^{\otimes m_1}\right)^{\otimes m_2}\\ |\overline{1}\rangle&=\frac{1}{2^{m_2/2}}\left(|0\rangle^{\otimes m_1}-|1\rangle^{\otimes m_1}\right)^{\otimes m_2}~. \end{split} \tag*{(4)}\end{align} |
Quantum repetition code | Encodes \(1\) qubit into \(n\) qubits according to \(|0\rangle\to|\phi_0\rangle^{\otimes n}\) and \(|1\rangle\to|\phi_1\rangle^{\otimes n}\). Also known as a bit-flip code when \(|\phi_i\rangle = |i\rangle\), and a phase-flip code when \(|\phi_0\rangle = |+\rangle\) and \(|\phi_1\rangle = |-\rangle\). |
Rotated surface code | Also called a checkerboard code. CSS variant of the surface code defined on a square lattice that has been rotated 45 degrees such that qubits are on vertices, and both \(X\)- and \(Z\)-type check operators occupy plaquettes in an alternating checkerboard pattern. |
Subsystem QPC | Subsystem version of the QPC which has the same parameters as the subspace version, but requires significantly fewer stabilizer measurements, resulting in a much simpler error recovery routine. |
Subsystem color code | Stub. |
Subsystem modular-qudit stabilizer code | Also called a gauge stabilizer code. Modular-qudit generalization of a subsystem qubit stabilizer code. Can be obtained by taking a modular qudit stabilizer code and assigning some of its logical qubits to be gauge qubits. For composite qudit dimensions, such codes need not encode an integer number of qudits. |
Subsystem quantum error-correcting code | A subsystem code, also known as an operator QECC or gauge QECC, encodes information in a subsystem \(\mathsf{A}\) of the code space \(\mathsf{C}\), which is part of the system Hilbert space \(\mathsf{H}\), as \begin{align} \mathsf{H}=\mathsf{C} \oplus \mathsf{C}^{\perp} = \mathsf{A} \otimes \mathsf{B} \oplus \mathsf{C}^{\perp}~. \tag*{(5)}\end{align} Following an error, it is sufficient to revert back to the original state modulo a transformation on the auxiliary or gauge subsystem \(\mathsf{B}\). The subsystem \(\mathsf{B}\) therefore gives additional freedom to the error correction process, and is said to encode gauge qubits when its dimension is a power of two. While strictly speaking all operator QECCs are also ordinary QECCs, the attachment of a subsystem to a code allows for a wider variety of encoding procedures, fault-tolerant logical operations, and efficient error-correction protocols. |
Subsystem qubit stabilizer code | Also called a gauge stabilizer code. A stabilizer code with some of its logical qubits denoted as gauge qubits and not used for storage of logical information. Note that this doesnt lead to new codes but does lead to new error correction and fault tolerance procedures. Subsystem codes are denoted by \([[n,k,r,d]]\), similar to stabilizer codes, but with an extra parameter \(r\) denoting the number of gauge qubits. |
Subsystem rotated surface code | Subsystem version of the rotated surface code. |
Subsystem surface code | Subsystem version of the surface code defined on a square lattice with qubits placed at every vertex and center of everry edge. |
Surface-17 code | A \([[9,1,3]]\) rotated surface code named for the sum of its 9 data qubits and 8 syndrome qubits. It uses the smallest number of qubits to perform error correction on a surface code with parallel syndrome extraction. |
Tetron Majorana code | Also called a Majorana box qubit or Majorana qubit. An \([[n,2,2]]_{f}\) Majorana stabilizer code forming the even-fermion-parity ground-state subspace of two parallel Kitaev Majorana chains in their fermionic topological phase. An extension using three Kitaev chains and housing two logical qubits of the same parity is called the hexon Majorana code. |
Three-fermion (3F) model code | A 3D topological code whose low-energy excitations realize the three-fermion anyon theory [17–19] and that can be used as a resource state for fault-tolerant MBQC [20]. |
Three-fermion (3F) subsystem code | Modular-qudit 2D subsystem stabilizer code whose low-energy excitations realize the three-fermion anyon theory [17–19]. One version uses two qubits at each site [6], while other manifestations utilize a single qubit per site and only two-body interactions [18,21]. All are expected to be equivalent to each other under local Clifford transformations. |
XY surface code | Also called the tailored surface code (TSC). Non-CSS derivative of the surface code whose generators are \(XXXX\) and \(YYYY\), obtained by mapping \(Z \to Y\) in the surface code. |
XYZ\(^2\) hexagonal stabilizer code | An instance of the matching code based on the Kitaev honeycomb model. It is described on a hexagonal lattice with \(XYZXYZ\) stabilizers on each hexagonal plaquette. Each vertical pair of qubits has an \(XX\), \(YY\), or \(ZZ\) link stabilizer depending on the orientation of the plaquette stabilizers. |
XZZX surface code | Non-CSS variant of the rotated surface code whose generators are \(XZXZ\) Pauli strings associated, clock-wise, to the vertices of each face of a two-dimensional lattice (with a qubit located at each vertex of the tessellation). |
\([[15,1,3]]\) quantum Reed-Muller code | \([[15,1,3]]\) CSS code that is most easily thought of as a tetrahedral 3D color code. This code contains 15 qubits, represented by four vertices, four face centers, six edge centers, and one body center. The tetrahedron is cellulated into four identical polyhedron cells by connecting the body center to all four face centers, where each face center is then connected by three adjacent edge centers. Each colored cell corresponds to a weight-8 \(X\)-check, and each face corresponds to a weight-4 \(Z\)-check. A logical \(Z\) is any weight-3 \(Z\)-string along an edge of the entire tetrahedron. The logical \(X\) is any weight-7 \(X\)-face of the entire tetrahedron. |
\([[4,2,2]]\) CSS code | Four-qubit CSS stabilizer code is the smallest qubit stabilizer code to detect a single-qubit error. Admits 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} \tag*{(6)}\end{align} This code is the smallest instance of the toric code, and its various single-qubit subcodes are small planar surface codes. |
\([[7,1,3]]\) Steane code | A \([[7,1,3]]\) CSS code that is the smallest qubit CSS code to correct a single-qubit error. The code is constructed using the classical binary \([7,4,3]\) Hamming code for protecting against both \(X\) and \(Z\) errors. |
\([[8,3,2]]\) code | Smallest 3D color code whose physical qubits lie on vertices of a cube and which admits a transversal CCZ gate. Similar constructions exist on \(d\)-dimensional hypercubes and are called hyperoctahedron \([[2^d,d,2]]\) codes [22]. |
\([[9,1,3]]\) Shor code | Nine-qubit CSS code that is the first quantum error-correcting code. |
\([[9,1,3]]_{\mathbb{Z}_q}\) modular-qudit code | Modular-qudit CSS code that generalizes the \([[9,1,3]]\) Shor code using properties of the multiplicative group \(\mathbb{Z}_q\). |
\(\mathbb{Z}_3\times\mathbb{Z}_9\)-fusion subsystem code | Modular-qudit 2D subsystem stabilizer code whose low-energy excitations realize a non-modular anyon theory with \(\mathbb{Z}_3\times\mathbb{Z}_9\) fusion rules. Encodes two qutrits when put on a torus. |
\(\mathbb{Z}_q^{(1)}\) subsystem code | Modular-qudit subsystem stabilizer code, based on the Kitaev honeycomb model [9] and its generalization [23], that is characterized by \(\mathbb{Z}_q^{(1)}\) topological order [24], which is modular for odd prime \(q\) and non-modular otherwise. Encodes a single \(q\)-dimensional qudit when put on a torus for odd \(q\), and a \(q/2\)-dimensional qudit for even \(q\). This code can be constructed using geometrically local gauge generators, but does not admit geometrically local stabilizer generators. For \(q=2\), the code reduces to the subsystem code underlying the Kitaev honeycomb model code as well as the honeycomb Floquet code. |