Here is a list of generalized homological product and related codes.
Code | Description |
---|---|
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. |
Balanced product (BP) code | Family of CSS quantum codes based on products of two classical codes which share common symmetries. The balanced product can be understood as taking the usual tensor/hypergraph product and then factoring out the symmetries factored. This reduces the overall number of physical qubits \(n\), while, under certain circumstances, leaving the number of encoded qubits \(k\) and the code distance \(d\) invariant. This leads to a more favourable encoding rate \(k/n\) and normalized distance \(d/n\) compared to the tensor/hypergraph product. |
Bring's code | Also called a small stellated dodecahedron code. A \([[30,8,3]]\) hyperbolic surface code on a quotient of the \(\{5,5\}\) hyperbolic tiling called Bring's curve. Its qubits and stabilizer generators lie on the vertices of the small stellated dodecahedron. Admits a set of weight-five stabilizer generators. |
Dinur-Hsieh-Lin-Vidick (DHLV) code | Stub. |
Distance-balanced code | Galois-qudit CSS code constructed from a CSS code and a classical code using a distance-balancing procedure based on a generalized homological product. The initial code is said to be unbalanced, i.e., tailored to noise biased toward either bit- or phase-flip errors, and the procedure can result in a code that is treats both types of errors on a more equal footing. The original distance-balancing procedure [2], later generalized [3; Thm. 4.2], can yield QLDPC codes [2; Thm. 1]. |
Expander LP code | Family of \(G\)-lifted product codes constructed using two random classical Tanner codes defined on expander graphs [4]. For certain parameters, this construction yields the first asymptotically good QLDPC codes. Classical codes resulting from this construction are one of the first two families of \(c^3\)-LTCs. |
Fiber-bundle code | Also called a twisted product code. CSS code constructed by combining a random LDPC code as the base and a cyclic repetition code as the fiber of a fiber bundle. After applying distance balancing, a QLDPC code with distance \(\Omega(n^{3/5}\text{polylog}(n))\) and rate \(\Omega(n^{-2/5}\text{polylog}(n))\) is obtained. |
Fractal surface code | Kitaev surface code on a fractal geometry, which is obtained by removing qubits from the surface code on a cubic lattice. Stub. |
Freedman-Meyer-Luo code | Hyperbolic surface code constructed using cellulation of a Riemannian Manifold \(M\) exhibiting systolic freedom [5]. Codes derived from such manifolds can achieve distances scaling better than \(\sqrt{n}\), something that is impossible using closed 2D surfaces or 2D surfaces with boundaries [6]. Improved codes are obtained by studying a weak family of Riemann metrics on closed 4-dimensional manifolds \(S^2\otimes S^2\) with the \(Z_2\)-homology. |
Generalized homological-product CSS code | CSS code whose properties are determined from an underlying chain complex, which often consists of some type of product of other chain complexes. |
Generalized homological-product code | Stabilizer code whose properties are determined from an underlying chain complex, which often consists of some type of product of other chain complexes. The Qubit CSS-to-homology correspondence yields an interpretation of codes in terms of manifolds, thus allowing for the use of various products from topology in constructing codes. |
Generalized surface code | Also called the \(D\)-dimensional surface or \(D\)-dimensional toric code. CSS-type extenstion of the Kitaev surface code to arbitrary \(D\)-dimensional manifolds. The 4D surface code serves as a self-correcting quantum memory, while surface codes in higher dimensions can have distances not possible in lower dimensions. |
Golden code | Variant of the Guth-Lubotzky hyperbolic surface code that uses regular tessellations for 4-dimensional hyperbolic space. |
Guth-Lubotzky code | Hyperbolic surface code based on cellulations of certain four-dimensional manifolds. The manifolds are shown to have good homology and systolic properties for the purposes of code construction, with corresponding codes exhibiting linear rate. |
Hemicubic code | Stub. |
High-dimensional expander (HDX) code | CSS code constructed from a Ramanujan quantum code and an asymptotically good classical LDPC code using distance balancing. Ramanujan quantum codes are defined using Ramanujan complexes which are simplicial complexes that generalise Ramanujan graphs [7,8]. Combining the quantum code obtained from a Ramanujan complex and a good classical LDPC code, which can be thought of as coming from a 1-dimensional chain complex, yields a new quantum code that is defined on a 2-dimensional chain complex. This 2-dimensional chain complex is obtained by the co-complex of the product of the 2 co-complexes. The length, dimension and distance of the new quantum code depend on the input codes. |
Homological product code | CSS code formulated using the homological product of two chain complexes (see Qubit CSS-to-homology correspondence). Stub. |
Homological rotor code | A homological quantum rotor code is an extension of analog stabilizer codes to rotors. The code is stabilized by a continuous group of rotor X-type and Z-type generalized Pauli operators. Codes are formulated using an extension of the qubit CSS-to-homology correspondence to rotors. The homology group of the logical operators has a torsion component because the chain complexes are defined over the ring of integers, which yields codes with finite logical dimension, i.e., encoding logical qudits instead of only logical rotors. Such finite-dimensional encodings are not possible with analog stabilizer codes. |
Hyperbolic surface code | An extension of the Kitaev surface code construction to hyperbolic manifolds. Given a cellulation of a manifold, qubits are put on \(i\)-dimensional faces, \(X\)-type stabilizers are associated with \((i-1)\)-faces, while \(Z\)-type stabilizers are associated with \(i+1\)-faces. |
Hypergraph product (HGP) code | A family of \([[n,k,d]]\) CSS codes whose construction is based on two binary linear seed codes \(C_1\) and \(C_2\). |
Hypersphere product code | Stub. |
Kitaev current-mirror qubit code | Member of the family of \([[2n,(0,2),(2,n)]]_{\mathbb{Z}}\) homological rotor codes on a thin Möbius strip. The ideal code can be obtained from a Josephson-junction [9] system [10]. |
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 [11–13]. Codewords correspond to ground states of the surface code Hamiltonian, and error operators create or annihilate pairs of anyonic charges or vortices. |
Lifted-product (LP) code | Also called a Panteleev-Kalachev (PK) code. Code that utilizes the notion of a lifted product in its construction. Lifted products of certain classical Tanner codes are the first (asymptotically) good QLDPC codes. |
Lossless expander balanced-product code | QLDPC code constructed by taking the balanced product of lossless expander graphs. Using one part of a quantum-code chain complex constructed with one-sided loss expanders [14] yields a \(c^3\)-LTC [15]. Using two-sided expanders, which are only conjectured to exist, yields an asymptotically good QLDPC code family [16]. |
Projective-plane surface code | A family of Kitaev surface codes on the non-orientable 2-dimensional compact manifold \(\mathbb{R}P^2\) (in contrast to a genus-\(g\) surface). Whereas genus-\(g\) surface codes require \(2g\) logical qubits, qubit codes on \(\mathbb{R}P^2\) are made from a single logical qubit. |
Quantum Tanner code | Member of a family of QLDPC codes based on two compatible classical Tanner codes defined on a two-dimensional Cayley complex. For certain choices of codes and complex, the resulting codes have asymptotically good parameters. |
Quantum check-product code | Stub. |
Quantum expander code | CSS codes constructed from a hypergraph product of bipartite expander graphs [4] with bounded left and right vertex degrees. For every bipartite graph there is an associated matrix (the parity check matrix) with columns indexed by the left vertices, rows indexed by the right vertices, and 1 entries whenever a left and right vertex are connected. This matrix can serve as the parity check matrix of a classical code. Two bipartite expander graphs can be used to construct a quantum CSS code (the quantum expander code) by using the parity check matrix of one as \(X\) checks, and the parity check matrix of the other as \(Z\) checks. |
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. |
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. |
Tensor-product HDX code | Code constructed in a similar way as the HDX code, but utilizing tensor products of Ramanujan complexes in order to improve code distance from \(\sqrt{n}\log n\) to \(\sqrt{n}~\text{polylog}(n)\). The utility of such tensor products comes from the fact that one of the Ramanujan complexes is a collective cosystolic expander as opposed to just a cosystolic expander. |
Three-rotor code | \([[3,1,2]]_{\mathbb Z}\) rotor code that is an extension of the \([[3,1,2]]_3\) qutrit CSS code to the integer alphabet, i.e., the angular momentum states of a planar rotor. The code is \(U(1)\)-covariant and its ideal codewords, \begin{align} |\overline{x}\rangle = \sum_{y\in\mathbb{Z}} \left| -3y,y-x,2(y+x) \right\rangle~, \tag*{(1)}\end{align} where \(x\in\mathbb{Z}\), are not normalizable. |
Two-dimensional hyperbolic surface code | Hyperbolic surface codes based on a tessellation of a closed 2D manifold with a hyperbolic geometry (i.e., non-Euclidean geometry, e.g., saddle surfaces when defined on a 2D plane). |
XYZ product code | A non-CSS QLDPC code constructed from three classical codes. The construction of an XYZ product code is similar to that of a hypergraph product code and related codes. The idea is that rather than taking a product of only two classical codes to produce a CSS code, a third classical code is considered, acting with Pauli-\(Y\) operators. |
Zero-pi qubit code | A \([[2,(0,2),(2,1)]]_{\mathbb{Z}}\) homological rotor code on the smallest tiling of the projective plane \(\mathbb{R}P^2\). The ideal code can be obtained from a four-rotor Josephson-junction [9] system after a choice of grounding [10]. |
\([[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*{(2)}\end{align} This code is the smallest instance of the toric code, and its various single-qubit subcodes are small planar surface codes. |
\([[9,1,3]]\) Shor code | Nine-qubit CSS code that is the first quantum error-correcting code. |