Skip to content

CSS Codes

Calderbank–Shor–Steane, or CSS, codes turn a compatible pair of binary linear codes into a quantum stabilizer code whose checks are purely XX-type or purely ZZ-type. That separation makes the construction unusually transparent. Commutation becomes one binary matrix product, logical Paulis become quotient spaces, and ideal syndromes split into two classical-looking parity equations. The separation is algebraic, however, not a promise that physical noise, decoding, or fault-tolerant operations split into independent problems.

This page develops the family rather than one celebrated member. It fixes one row-vector convention for HXH_X and HZH_Z, translates it into nested classical codes, constructs normalized coset states, derives exact XX- and ZZ-logical quotients and distances, and specializes Pauli correctability to CSS language. A deliberately unequal five-qubit detection fixture keeps every convention auditable without duplicating the exact Shor Code, Steane Code, or perfect non-CSS Five-Qubit Code.

The construction emerged independently through Calderbank and Shor’s existence construction and Steane’s code-theoretic construction, with a fuller classical-code recipe in Steane’s subsequent treatment. The language below uses the stabilizer synthesis developed systematically by Gottesman and the standard presentation of Nielsen and Chuang.

Required background. Stabilizer Formalism supplies Pauli supports, stabilizer groups, normalizers, logical cosets, syndromes, and full-Pauli distance.

Helpful background. Classical Information Review supplies parity-check and binary-code orientation. Why Quantum Error Correction Is Possible supplies the general Knill–Laflamme theorem. Every binary-space convention needed below is nevertheless declared here.

Two Classical Codes and One Commuting Stabilizer

Section titled “Two Classical Codes and One Commuting Stabilizer”

All vectors are binary row vectors, arithmetic is over F2\mathbb F_2, and a length-nn string is read from qubit one on the left to qubit nn on the right. For x,z∈F2nx,z\in\mathbb F_2^n, define

X(x)=⨂j=1nXjxj,Z(z)=⨂j=1nZjzj,E(x,z)=X(x)Z(z).X(x)=\bigotimes_{j=1}^{n}X_j^{x_j}, \qquad Z(z)=\bigotimes_{j=1}^{n}Z_j^{z_j}, \qquad E(x,z)=X(x)Z(z).

E(x,z)E(x,z) is a phase-free representative. On one qubit Y=iXZY=iXZ, so a physical YjY_j has xj=zj=1x_j=z_j=1 although its global phase is discarded in the binary record. That phase suppression is legitimate for commutation, syndrome, stabilizer-coset, and distance calculations; it would not be legitimate in a calculation whose output depends on an operator’s signed action.

The ordinary binary inner product controls the cross-commutation:

X(x)Z(z)=(−1)xzTZ(z)X(x).X(x)Z(z)=(-1)^{xz^{\mathsf T}}Z(z)X(x).

Thus two supports commute exactly when their overlap has even cardinality. The convention table records the objects used throughout. “Positive check” means that the code occupies the +1+1 eigenspace of the associated Pauli, not that the binary entries have a sign.

QuantityFrozen definitionRole
Binary support vectorsx,z∈F2nx,z\in\mathbb F_2^n, written as row vectorsLocate physical XX and ZZ factors
Phase-free Pauli representativeE(x,z)=X(x)Z(z)E(x,z)=X(x)Z(z) with Yj=iXjZjY_j=iX_jZ_jSuppress irrelevant global phase while retaining both YY components
X-check matrixHX∈F2mX×nH_X\in\mathbb F_2^{m_X\times n}Each row supports one positive XX stabilizer generator
Z-check matrixHZ∈F2mZ×nH_Z\in\mathbb F_2^{m_Z\times n}Each row supports one positive ZZ stabilizer generator
Cross-commutationHXHZT=0H_XH_Z^{\mathsf T}=0Make every XX check commute with every ZZ check
Independent check ranksrX=rank⁡HXr_X=\operatorname{rank}H_X, rZ=rank⁡HZr_Z=\operatorname{rank}H_ZRemove redundant parity equations
Encoded qubitsk=n−rX−rZk=n-r_X-r_ZGive code-space dimension 2k2^k
X-logical quotientker⁡HZ/row⁡HX\ker H_Z/\operatorname{row}H_XIdentify nontrivial pure-XX logical supports
Z-logical quotientker⁡HX/row⁡HZ\ker H_X/\operatorname{row}H_ZIdentify nontrivial pure-ZZ logical supports
Axis distancesdX,dZd_X,d_Z are minimum nontrivial quotient weightsResolve asymmetric pure-axis protection
Ordered syndromeσ(E)=(HZxT∣HXzT)\sigma(E)=(H_Zx^{\mathsf T}\mid H_Xz^{\mathsf T})List ZZ-check bits before XX-check bits

The two halves of a binary Pauli record should not be confused with two independent physical errors. They are coordinates of one operator. In particular, the same microscopic event can populate both halves, as YjY_j does, and a physical prior may correlate supports at different qubits as well.

Let

HX∈F2mX×n,HZ∈F2mZ×n.H_X\in\mathbb F_2^{m_X\times n}, \qquad H_Z\in\mathbb F_2^{m_Z\times n}.

For a row hh of HXH_X, use the positive check X(h)X(h); for a row gg of HZH_Z, use the positive check Z(g)Z(g). Checks within either sector commute automatically. A cross-sector pair obeys

X(h)Z(g)=(−1)hgTZ(g)X(h).X(h)Z(g)=(-1)^{hg^{\mathsf T}}Z(g)X(h).

Consequently, the entire proposed generating set commutes exactly when

HXHZT=0.H_XH_Z^{\mathsf T}=0.

This equation says that every XX-row support meets every ZZ-row support in an even number of coordinates. It is both a construction rule and a fast audit: one nonzero matrix entry identifies a pair of anticommuting proposed checks, so no common code space with the declared signs exists.

The row counts mX,mZm_X,m_Z need not equal the numbers of independent checks. Experimental schedules and decoder inputs often retain redundant checks because they can expose measurement faults or improve inference. Algebraically the code depends on the row spaces. If

rX=rank⁡HX,rZ=rank⁡HZ,r_X=\operatorname{rank}H_X, \qquad r_Z=\operatorname{rank}H_Z,

then there are rX+rZr_X+r_Z independent commuting Pauli constraints and

k=n−rX−rZ.k=n-r_X-r_Z.

Duplicating a row changes mXm_X or mZm_Z but changes neither rank nor code space. Replacing ranks by row counts can therefore produce a negative or otherwise false value of kk. Row reduction is only a mathematical simplification; it does not declare a redundant physical measurement useless.

All check signs here are positive. A general signed stabilizer presentation can describe another joint eigenspace with the same binary supports, but its sign consistency belongs to the general stabilizer formalism. The CSS construction in this page starts from positive XX and ZZ generators and uses the binary matrices to specify their supports.

Nested classical codes without label ambiguity

Section titled “Nested classical codes without label ambiguity”

The same construction can be expressed as a nested pair of classical linear codes. Freeze

C2=row⁡HX,C1=ker⁡HZ.C_2=\operatorname{row}H_X, \qquad C_1=\ker H_Z.

The matrix equation HXHZT=0H_XH_Z^{\mathsf T}=0 is then exactly

C2⊆C1.C_2\subseteq C_1.

Taking binary orthogonal complements gives

C1⊥=row⁡HZ,C2⊥=ker⁡HX,C1⊥⊆C2⊥.C_1^\perp=\operatorname{row}H_Z, \qquad C_2^\perp=\ker H_X, \qquad C_1^\perp\subseteq C_2^\perp.

These familiar row-space, kernel, and duality identities are standard classical coding theory; MacWilliams and Sloane give the broader theory. They also make the converse construction immediate. Starting from C2⊆C1C_2\subseteq C_1, choose rows of HXH_X spanning C2C_2 and rows of HZH_Z spanning C1⊥C_1^\perp. Orthogonality then guarantees commuting CSS checks.

Classical objectFrozen identityCSS role
C2C_2row⁡HX\operatorname{row}H_XSupports XX stabilizers and translations within one logical coset
C1C_1ker⁡HZ\ker H_ZContains computational strings satisfying every ZZ check
C1⊥C_1^\perprow⁡HZ\operatorname{row}H_ZSupports ZZ stabilizers
C2⊥C_2^\perpker⁡HX\ker H_XContains supports commuting with every XX check
C1/C2C_1/C_2ker⁡HZ/row⁡HX\ker H_Z/\operatorname{row}H_XLabels XX-logical translations and logical basis cosets
C2⊥/C1⊥C_2^\perp/C_1^\perpker⁡HX/row⁡HZ\ker H_X/\operatorname{row}H_ZLabels ZZ-logical phases

Names such as CXC_X and CZC_Z are not uniform across the literature: one author may name a code for the errors it corrects, another for the checks it supports, and a third for the logical operators it contains. This page avoids that ambiguity by treating HX,HZH_X,H_Z as primary and freezing C2=row⁡HXC_2=\operatorname{row}H_X, C1=ker⁡HZC_1=\ker H_Z. Translating another source requires checking its definitions, not merely replacing subscripts.

There is a second translation hazard. A classical parity-check matrix has a kernel as its code, whereas the rows of HXH_X here directly generate quantum XX checks. Thus HZH_Z is a parity-check matrix for C1C_1, while HXH_X is a generator matrix for C2C_2 in the frozen dictionary. Both are called “check matrices” at the quantum level because every row becomes a measured stabilizer. Keeping the row-space and kernel identities visible prevents a classical generator matrix from being mistaken for the wrong quantum check sector.

An [[n,k]][[n,k]] CSS code is the simultaneous +1+1 eigenspace of the positive checks generated by the two row spaces. Because a nonidentity commuting Pauli constraint halves the retained Hilbert-space dimension, rX+rZr_X+r_Z independent constraints leave

dim⁡C=2n−rX−rZ=2k.\dim\mathcal C=2^{n-r_X-r_Z}=2^k.

This dimension count agrees with the classical quotient:

dim⁡(C1/C2)=dim⁡C1−dim⁡C2=(n−rZ)−rX=k.\dim(C_1/C_2) = \dim C_1-\dim C_2 = (n-r_Z)-r_X =k.

The agreement is structural. The stabilizer count says how many quantum degrees of freedom remain; the quotient says how many binary coset labels are available for an orthonormal logical basis.

Redundant rows do not add constraints. Suppose a matrix contains the same XX row twice. Both listed operators can be measured, and comparing their records may be useful in a noisy circuit, but the second row does not halve the ideal code space again. Similarly, multiplying existing generators produces another stabilizer without raising the independent rank. A code parameter statement must therefore report ranks or an independently verified generating set.

The formula also exposes an invalid proposal quickly. Cross-commutation alone is not enough if someone declares more independent rows than the ambient dimension permits; row reduction resolves the true ranks. With the positive CSS presentation used here, the two sectors contribute additively because a nonidentity pure-XX Pauli cannot equal a pure-ZZ Pauli.

Dependencies among rows have their own binary witnesses. A nonzero vector in the left kernel of HXH_X identifies a product of listed XX checks equal to identity; the analogous statement holds for HZH_Z. Removing those dependencies produces a minimal algebraic generating set, but retaining them can still be operationally useful. If k=0k=0, the construction gives a stabilizer state rather than an encoded logical register. The same formulas remain valid, while both logical quotient spaces become trivial.

For a coset [u]∈C1/C2[u]\in C_1/C_2, define

∣[u]⟩=1∣C2∣∑v∈C2∣u+v⟩.\lvert[u]\rangle = \frac{1}{\sqrt{|C_2|}} \sum_{v\in C_2}\lvert u+v\rangle.

Changing the representative from uu to u+wu+w with w∈C2w\in C_2 merely relabels the summation variable, so the state depends only on the coset. Every computational basis string appears with the same amplitude and there are ∣C2∣|C_2| distinct strings. Therefore the prefactor normalizes the state. Distinct cosets are disjoint subsets of the computational basis, which makes their states orthogonal.

An XX check supported on h∈C2h\in C_2 translates every summand:

X(h)∣u+v⟩=∣u+v+h⟩.X(h)\lvert u+v\rangle=\lvert u+v+h\rangle.

Since v↦v+hv\mapsto v+h permutes C2C_2, the sum is invariant. A ZZ check supported on g∈C1⊥g\in C_1^\perp contributes the phase

(−1)g(u+v)T=1,(-1)^{g(u+v)^{\mathsf T}}=1,

because both uu and vv lie in C1C_1. Thus every coset state is stabilized by both sectors. There are 2k2^k cosets, so these orthonormal states fill the entire code space.

This construction does not select a unique computational labeling of the kk logical qubits. A basis for C1/C2C_1/C_2 supplies that additional choice. Different quotient bases describe the same encoded subspace but change which products of physical Paulis are called X‾1,…,X‾k\overline X_1,\ldots,\overline X_k. Such changes are logical coordinate changes, not new codes.

A pure-XX operator X(x)X(x) commutes with every ZZ check exactly when x∈ker⁡HZ=C1x\in\ker H_Z=C_1. It is an XX stabilizer exactly when x∈row⁡HX=C2x\in\operatorname{row}H_X=C_2. Hence nontrivial pure-XX logical supports are the quotient

LX=ker⁡HZrow⁡HX=C1C2.\mathcal L_X = \frac{\ker H_Z}{\operatorname{row}H_X} = \frac{C_1}{C_2}.

The operator X(x)X(x) translates the coset label:

X(x)∣[u]⟩=∣[u+x]⟩.X(x)\lvert[u]\rangle=\lvert[u+x]\rangle.

Likewise, a pure-ZZ operator commutes with the XX checks when z∈ker⁡HX=C2⊥z\in\ker H_X=C_2^\perp, and it is a ZZ stabilizer when z∈row⁡HZ=C1⊥z\in\operatorname{row}H_Z=C_1^\perp. Therefore

LZ=ker⁡HXrow⁡HZ=C2⊥C1⊥.\mathcal L_Z = \frac{\ker H_X}{\operatorname{row}H_Z} = \frac{C_2^\perp}{C_1^\perp}.

For zz in that kernel, the phase on a coset state is constant:

Z(z)∣[u]⟩=(−1)zuT∣[u]⟩,Z(z)\lvert[u]\rangle = (-1)^{zu^{\mathsf T}}\lvert[u]\rangle,

because zvT=0zv^{\mathsf T}=0 for every v∈C2v\in C_2.

Both quotient spaces have dimension kk. Choose row representatives LX,LZL_X,L_Z for quotient bases so that

LXLZT=Ik.L_XL_Z^{\mathsf T}=I_k.

The diagonal ones make corresponding logical XX and ZZ representatives anticommute, while off-diagonal zeros make different logical-qubit pairs commute. Such paired bases exist because the induced bilinear pairing between the two quotient spaces is nondegenerate. If a proposed XX quotient class paired trivially with every ZZ class, its support would lie in (ker⁡HX)⊥=row⁡HX(\ker H_X)^\perp=\operatorname{row}H_X and would therefore be trivial.

Adding a row of HXH_X to an XX representative or a row of HZH_Z to a ZZ representative changes the physical Pauli by a stabilizer. The logical action is unchanged, although physical weight and hardware convenience can change. This equivalence is why a decoder seeks the right logical class rather than a unique microscopic error.

Freeze the convention that dXd_X refers to a nontrivial pure-XX logical and dZd_Z to a nontrivial pure-ZZ logical:

dX=min⁡{wt⁡(x):x∈ker⁡HZ∖row⁡HX},d_X = \min\left\{ \operatorname{wt}(x): x\in\ker H_Z\setminus\operatorname{row}H_X \right\}, dZ=min⁡{wt⁡(z):z∈ker⁡HX∖row⁡HZ}.d_Z = \min\left\{ \operatorname{wt}(z): z\in\ker H_X\setminus\operatorname{row}H_Z \right\}.

If the corresponding nontrivial logical-axis set is empty, take the minimum to be +∞+\infty. For a nontrivial CSS code both logical quotients have dimension kk, and the full Pauli distance is

d=min⁡(dX,dZ).d=\min(d_X,d_Z).

To see why mixed Paulis cannot lower this minimum, let E(x,z)E(x,z) be a normalizer element. Its XX support belongs to ker⁡HZ\ker H_Z and its ZZ support belongs to ker⁡HX\ker H_X. If both components are stabilizer supports, the whole operator is a stabilizer up to phase. Otherwise at least one component is a nontrivial logical class whose weight is at least dXd_X or dZd_Z, while the weight of the union support cannot be smaller than that component’s weight.

The quotient exclusions are essential. The classical distance of C1C_1 is the minimum weight of any nonzero word in C1C_1, but that word could belong to C2C_2 and therefore be an XX stabilizer rather than a logical operator. Thus raw classical distances can provide useful bounds yet need not equal the exact quantum axis distances. Quotient enumeration or an equivalent proof must exclude stabilizers explicitly.

CSS does not mean symmetric protection. It is possible to have dX≠dZd_X\ne d_Z, a useful feature when one noise component dominates. The labels themselves are not universal across sources, so the support-based definitions above accompany every parameter claim. A code of distance dd detects every Pauli of weight below dd and corrects every arbitrary Pauli set of weight at most ⌊(d−1)/2⌋\lfloor(d-1)/2\rfloor; degeneracy can make selected higher-weight sets correctable without changing the distance definition.

The two axis distances can also support a more refined task statement. A known-location erasure is correctable when no nontrivial logical support fits entirely inside the erased set, so the actual support geometry matters in addition to its size. A biased-noise design may deliberately make one axis distance larger, but quoting only that favorable value would overstate full-Pauli protection. The parameter [[n,k,d]][[n,k,d]] always uses the smaller axis distance; a more informative asymmetric report gives [[n,k,(dX,dZ)]][[n,k,(d_X,d_Z)]] together with the page’s frozen label convention.

For E(x,z)=X(x)Z(z)E(x,z)=X(x)Z(z), a ZZ check detects the XX component and an XX check detects the ZZ component. Order the syndrome by check type:

sZ=HZxT,sX=HXzT,σ(E)=(sZ∣sX).s_Z=H_Zx^{\mathsf T}, \qquad s_X=H_Xz^{\mathsf T}, \qquad \sigma(E)=(s_Z\mid s_X).

Here sZs_Z means “bits produced by the ordered ZZ checks,” not “syndrome of a ZZ error.” This naming removes a common ambiguity. In the same convention, a single XjX_j produces column jj of HZH_Z in the first sector, a single ZjZ_j produces column jj of HXH_X in the second, and YjY_j produces both.

The equations are linear:

σ(E(x1,z1)E(x2,z2))=σ(E(x1+x2,z1+z2)),\sigma(E(x_1,z_1)E(x_2,z_2)) = \sigma(E(x_1+x_2,z_1+z_2)),

where an irrelevant product phase is suppressed. A syndrome therefore specifies an affine set of candidate supports. It rarely identifies a unique fault location, and it never by itself supplies a probability distribution over candidates.

Physical extraction is a separate layer. The equations assume ideal outcomes for the declared checks. Ancilla preparation, controlled-gate order, measurement faults, repeated rounds, and detector construction belong to Syndrome Measurement. Using a matrix as an ideal parity map does not certify a circuit that measures it safely.

Consider two phase-free Pauli errors Ea=E(xa,za)E_a=E(x_a,z_a) and Eb=E(xb,zb)E_b=E(x_b,z_b). Their syndromes are equal exactly when

xa+xb∈ker⁡HZ,za+zb∈ker⁡HX.x_a+x_b\in\ker H_Z, \qquad z_a+z_b\in\ker H_X.

Equivalently, Ea†EbE_a^\dagger E_b lies in the Pauli normalizer of the stabilizer. Equal syndrome is therefore weaker than equal action on the code. There are two possibilities. If

xa+xb∈row⁡HX,za+zb∈row⁡HZ,x_a+x_b\in\operatorname{row}H_X, \qquad z_a+z_b\in\operatorname{row}H_Z,

then the difference is a stabilizer up to phase. The errors are harmlessly degenerate: one correction class reverses both. If either quotient class is nontrivial, the difference is a logical Pauli. The errors then have the same syndrome but require incompatible logical corrections.

This is the CSS specialization of the Knill–Laflamme condition,

PEa†EbP=cabP.PE_a^\dagger E_bP=c_{ab}P.

If the product anticommutes with a check, the projected operator is zero. If it is a stabilizer, it is scalar on the code. If it is a nontrivial normalizer element, it acts logically and is not scalar, so an error set containing both members is not exactly correctable.

For a proposed phase-free recovery R=E(rX,rZ)R=E(r_X,r_Z), the residual succeeds on the code precisely when

x+rX∈row⁡HX,z+rZ∈row⁡HZ.x+r_X\in\operatorname{row}H_X, \qquad z+r_Z\in\operatorname{row}H_Z.

This condition allows a recovery to differ from the microscopic error by any stabilizer. Demanding rX=xr_X=x and rZ=zr_Z=z would discard degeneracy and impose an unnecessary identification task.

For a fixed syndrome, choosing one representative identifies an affine normalizer coset. Quotienting that set by the stabilizer leaves the possible logical residual classes. The syndrome tells which check eigenspace contains the corrupted state; it does not select among those logical classes. This separation explains both sides of degeneracy: many physical representatives inside one stabilizer class are harmless, while two representatives in different logical classes remain indistinguishable to the checks. A decoder must use a noise model or additional records to choose among them.

The check equations split, but a probabilistic model need not. Let p(x,z∣sZ,sX)p(x,z\mid s_Z,s_X) be the posterior over binary components. Independent half-decoding is exact only under assumptions strong enough to factor the relevant posterior or preserve its optimum after marginalization. A physical YjY_j is one event with xj=zj=1x_j=z_j=1; CSS algebra does not determine whether that event arises from correlated or independently sampled components.

For example, with a one-qubit prior

(pI,pX,pY,pZ)=(0.91,0.02,0.06,0.01),(p_I,p_X,p_Y,p_Z)=(0.91,0.02,0.06,0.01),

the marginal probabilities that the XX and ZZ components are present are 0.080.08 and 0.070.07. Multiplying them would assign 0.00560.0056 to their joint presence, more than a factor of ten below the true YY probability 0.060.06. The parity equations remain correct; the factorized statistical assumption does not.

Correlations can also come from multi-qubit mechanisms, common controls, leakage followed by return, or a syndrome circuit whose one fault propagates to several data qubits. Degeneracy adds another distinction: the desired posterior is over logical recovery classes, so probabilities of many physical representatives should be combined rather than compared one by one.

Decoders owns those likelihoods, correlations, algorithm families, confidence measures, throughput, and latency. This page supplies the algebraic interface: the two syndrome equations, stabilizer row spaces, logical quotients, and the criterion by which a candidate residual is judged.

An Unequal-Matrix Five-Qubit Detection Fixture

Section titled “An Unequal-Matrix Five-Qubit Detection Fixture”

Consider the deliberately unnamed pair

HX=(1111000111),HZ=(1001101101).H_X= \begin{pmatrix} 1&1&1&1&0\\ 0&0&1&1&1 \end{pmatrix}, \qquad H_Z= \begin{pmatrix} 1&0&0&1&1\\ 0&1&1&0&1 \end{pmatrix}.

Every cross-row overlap has size two, so

HXHZT=(0000).H_XH_Z^{\mathsf T} = \begin{pmatrix} 0&0\\ 0&0 \end{pmatrix}.

Both matrices have rank two. The four independent positive stabilizer generators, in declared row order, are

XXXXI,IIXXX,ZIIZZ,IZZIZ.XXXXI,\qquad IIXXX,\qquad ZIIZZ,\qquad IZZIZ.

They define a code with

k=5−2−2=1.k=5-2-2=1.

This is a compact [[5,1,d]][[5,1,d]] CSS fixture constructed for the present audit. It is not the cyclic perfect Five-Qubit Code, whose mixed-Pauli generators, sixteen one-error sectors, and distance-three correction are owned by that page.

The matrices are intentionally unequal. An all-ones even-parity detector would make every XX location share one syndrome and every ZZ location another. The present pair remains completely enumerable while exercising two-bit check sectors, a nontrivial nested coset basis, paired quotient representatives, and several same-syndrome logical collisions.

The XX-check row space is

C2={00000,00111,11110,11001}.C_2 = \{00000,00111,11110,11001\}.

Solving HZuT=0H_Zu^{\mathsf T}=0 gives

C1=C2∪{01100,01011,10010,10101}.C_1 = C_2\cup \{01100,01011,10010,10101\}.

Thus C1/C2C_1/C_2 has two cosets. Their normalized states are

∣0L⟩=12(∣00000⟩+∣00111⟩+∣11110⟩+∣11001⟩),\lvert0_L\rangle = \frac12\left( \lvert00000\rangle+ \lvert00111\rangle+ \lvert11110\rangle+ \lvert11001\rangle \right), ∣1L⟩=12(∣01100⟩+∣01011⟩+∣10010⟩+∣10101⟩).\lvert1_L\rangle = \frac12\left( \lvert01100\rangle+ \lvert01011\rangle+ \lvert10010\rangle+ \lvert10101\rangle \right).

Translation by xL=01100x_L=01100 swaps the two cosets, so a convenient logical operator is

X‾=X2X3.\overline X=X_2X_3.

The support zL=11000z_L=11000 lies in ker⁡HX\ker H_X but not in row⁡HZ\operatorname{row}H_Z. Its phase is even on the first coset and odd on the second, so

Z‾=Z1Z2.\overline Z=Z_1Z_2.

Their binary pairing is

xLzLT=1,x_Lz_L^{\mathsf T}=1,

which gives the required logical anticommutation. Adding an XX-check row to xLx_L or a ZZ-check row to zLz_L produces another representative of the same logical operator.

Enumeration of the two quotient spaces gives no weight-one nontrivial class. Both displayed representatives have weight two, so

dX=dZ=d=2.d_X=d_Z=d=2.

Apply the frozen order

σ(E)=(HZeXT∣HXeZT).\sigma(E)=(H_Ze_X^{\mathsf T}\mid H_Xe_Z^{\mathsf T}).

The ledger includes identity and every single-qubit phase-free Pauli:

ErrorZ-check bits HZeXTH_Ze_X^{\mathsf T}X-check bits HXeZTH_Xe_Z^{\mathsf T}Ordered syndrome
II000000|00
X1X_1100010|00
X2X_2010001|00
X3X_3010001|00
X4X_4100010|00
X5X_5110011|00
Z1Z_1001000|10
Z2Z_2001000|10
Z3Z_3001100|11
Z4Z_4001100|11
Z5Z_5000100|01
Y1Y_1101010|10
Y2Y_2011001|10
Y3Y_3011101|11
Y4Y_4101110|11
Y5Y_5110111|01

The first half of each XjX_j row is column jj of HZH_Z; the second half of each ZjZ_j row is column jj of HXH_X. Each YjY_j row is their concatenation. This column rule reconstructs the table without multiplying five-qubit matrices explicitly.

Identity and the fifteen weight-one Paulis occupy twelve syndrome sectors: one zero sector, three pure-XX sectors, three pure-ZZ sectors, and five mixed sectors. Every nonidentity row has nonzero syndrome, so every weight-one Pauli is detected. Detection does not imply that all such errors are jointly correctable.

Detection without arbitrary one-qubit correction

Section titled “Detection without arbitrary one-qubit correction”

The repeated syndromes reveal the obstruction. For example,

σ(X2)=σ(X3)=01∣00,\sigma(X_2)=\sigma(X_3)=01\mid00,

but

X2†X3=X2X3=X‾.X_2^\dagger X_3=X_2X_3=\overline X.

Likewise,

σ(Z1)=σ(Z2)=00∣10,Z1†Z2=Z1Z2=Z‾.\sigma(Z_1)=\sigma(Z_2)=00\mid10, \qquad Z_1^\dagger Z_2=Z_1Z_2=\overline Z.

These pairs differ by nontrivial logical operators, not stabilizers. X1/X4X_1/X_4 and Z3/Z4Z_3/Z_4 form the other repeated pairs and differ by the same logical classes times stabilizers. A recovery selected from a repeated sector must therefore fail on at least one member of the corresponding pair.

The result agrees with d=2d=2: the code detects all weight-one Paulis but cannot correct the complete arbitrary one-qubit set. This distinction is stronger than saying that a syndrome is “ambiguous.” Harmless degeneracy would allow the same correction to work for both candidates; a logical collision violates the scalar Knill–Laflamme condition.

Complete enumeration provides useful cross-checks. Four independent generators produce a phase-free stabilizer of size 24=162^4=16. Its Pauli normalizer has size 2n+k=642^{n+k}=64, split into four logical Pauli cosets of sixteen elements each. Searching the normalizer outside the stabilizer finds weight-two representatives in both pure axes and none at weight one. Searching all 45=10244^5=1024 phase-free Paulis reproduces every ledger entry and collision class without changing the analytic conclusion.

Take two blocks with the same HX,HZH_X,H_Z convention and apply CNOT from each physical control qubit to the corresponding target qubit. Conjugation gives

Xc(x)⟼Xc(x)Xt(x),Zc(z)⟼Zc(z),X_c(x)\longmapsto X_c(x)X_t(x), \qquad Z_c(z)\longmapsto Z_c(z), Xt(x)⟼Xt(x),Zt(z)⟼Zc(z)Zt(z).X_t(x)\longmapsto X_t(x), \qquad Z_t(z)\longmapsto Z_c(z)Z_t(z).

An XX stabilizer on the control becomes the product of the same XX stabilizer on control and target; an XX stabilizer on the target remains there. A ZZ stabilizer on the target becomes the corresponding product, and a control ZZ stabilizer remains there. The joint two-block stabilizer group is therefore preserved for every CSS code.

The action is especially direct on coset states. Computational CNOT adds the control string into the target string. Summing over the two C2C_2 cosets and relabeling the target summation variable gives

∣[u]⟩c∣[v]⟩t⟼∣[u]⟩c∣[u+v]⟩t.\lvert[u]\rangle_c\lvert[v]\rangle_t \longmapsto \lvert[u]\rangle_c\lvert[u+v]\rangle_t.

After choosing paired quotient bases, this is a logical CNOT between corresponding logical qubits. A different quotient basis can compose that action with a logical linear coordinate change, which is why conventions must be fixed before naming individual logical wires.

This statement is algebraic. It assumes the ideal tensor product of physical CNOTs and says how stabilizers and logical classes transform. Whether one fault in the physical layer remains correctable, whether all pairings are available, and how syndrome extraction surrounds the operation are separate gadget questions.

Hadamard and phase gates need extra structure

Section titled “Hadamard and phase gates need extra structure”

Tensorwise Hadamard obeys

H⊗nX(x)H⊗n=Z(x),H⊗nZ(z)H⊗n=X(z).H^{\otimes n}X(x)H^{\otimes n}=Z(x), \qquad H^{\otimes n}Z(z)H^{\otimes n}=X(z).

It swaps the XX- and ZZ-check row spaces. Bare H⊗nH^{\otimes n} preserves the same frozen code when those row spaces agree; it can also implement a logical operation if an explicit qubit permutation or other code equivalence returns the swapped presentation. CSS structure alone does not provide that equivalence. In the five-qubit fixture, row⁡HX≠row⁡HZ\operatorname{row}H_X\ne\operatorname{row}H_Z, so bare H⊗5H^{\otimes5} does not preserve the declared stabilizer.

For the phase gate, the tensorwise identities are

S⊗nX(v)(S†)⊗n=iwt⁡(v)X(v)Z(v),S^{\otimes n}X(v)(S^\dagger)^{\otimes n} = i^{\operatorname{wt}(v)}X(v)Z(v), S⊗nZ(v)(S†)⊗n=Z(v).S^{\otimes n}Z(v)(S^\dagger)^{\otimes n} = Z(v).

An XX-check support must therefore have the necessary ZZ support inside the ZZ-check row space, and its weight-dependent phase must reproduce the declared positive stabilizer sign. These are containment and divisibility conditions beyond CSS commutation. Logical phases then depend on the weights and pairings of quotient representatives. The Steane code supplies one exact, convention-sensitive example; it should not be promoted into a theorem about all CSS codes.

Nor does CSS structure grant a tensorwise TT gate. Special divisible or otherwise structured CSS families can admit transversal operations higher in the Clifford hierarchy, so the opposite slogan—“CSS transversal gates are only Clifford”—would also be false. Every claimed operation needs a code-specific stabilizer and logical-action audit.

Algebraic preservation is not fault tolerance

Section titled “Algebraic preservation is not fault tolerance”

A physical operation may normalize a stabilizer perfectly in the absence of faults while failing as a protected gadget. A complete certificate must state the allowed input errors and internal faults, propagate them through the circuit, include ancillas and measurements, and show that every accepted output differs from the intended logical action by a correctable residual in each block. Connectivity, common-mode faults, leakage, waits, decoder timing, and surrounding correction rounds can all matter.

Bitwise CNOT has a useful containment structure because one faulty pairwise location touches at most one qubit in each block under a local fault model. That observation is not itself a proof for a particular device or syndrome schedule. Fault-Tolerant Gates owns the gadget criterion, fault-spread audits, code switching, and universal completion.

Eastin and Knill prove, under their exact finite-dimensional assumptions, that a nontrivial code detecting arbitrary errors on each physical subsystem cannot possess a universal set of transversal encoded unitaries. The theorem does not say transversal subsets are unimportant, forbid measurements or resource states, or prove that a particular algebraic transversal gate is fault tolerant under a device noise model. CSS structure and transversality answer different questions.

The commutation equation can be displayed as two short chain complexes:

F2mZ→HZTF2n→HXF2mX,\mathbb F_2^{m_Z} \xrightarrow{H_Z^{\mathsf T}} \mathbb F_2^n \xrightarrow{H_X} \mathbb F_2^{m_X}, F2mX→HXTF2n→HZF2mZ.\mathbb F_2^{m_X} \xrightarrow{H_X^{\mathsf T}} \mathbb F_2^n \xrightarrow{H_Z} \mathbb F_2^{m_Z}.

The first composition is HXHZT=0H_XH_Z^{\mathsf T}=0; the second is its transpose. Images are therefore contained in kernels, exactly as stabilizer supports are contained among normalizer supports.

Two dual CSS chain complexes with zero composition and logical quotient spaces

The CSS commutation equation supplies two zero compositions. The middle-space quotients are ker⁡HX/im⁡HZT\ker H_X/\operatorname{im}H_Z^{\mathsf T} for ZZ-type logical supports and ker⁡HZ/im⁡HXT\ker H_Z/\operatorname{im}H_X^{\mathsf T} for XX-type logical supports. This is an algebraic dictionary: it asserts neither a spatial lattice nor a sparse Tanner graph.

Using mX,mZm_X,m_Z keeps the displayed maps valid when a check matrix contains dependent rows. The dimensions of the images are the ranks rX,rZr_X,r_Z, so the middle homology dimensions still equal kk. Replacing each check matrix by a full-row-rank basis produces a smaller presentation of the same CSS code with the same middle quotients; it discards the endpoint kernels that record relations among redundant checks.

Redundant rows appear at the ends of these sequences as nontrivial kernels of the transpose maps. They encode relations among checks rather than additional logical qubits. In a repeated-measurement setting such relations can become useful consistency constraints on outcomes, but that temporal use requires a measurement model not contained in the static complex. The middle quotient continues to describe ideal logical Pauli classes even when the endpoint spaces retain every redundant check.

Logical quotients without geometry or sparsity

Section titled “Logical quotients without geometry or sparsity”

The middle homology of the first sequence is

ker⁡HXim⁡HZT=ker⁡HXrow⁡HZ=LZ,\frac{\ker H_X}{\operatorname{im}H_Z^{\mathsf T}} = \frac{\ker H_X}{\operatorname{row}H_Z} = \mathcal L_Z,

while the second gives

ker⁡HZim⁡HXT=ker⁡HZrow⁡HX=LX.\frac{\ker H_Z}{\operatorname{im}H_X^{\mathsf T}} = \frac{\ker H_Z}{\operatorname{row}H_X} = \mathcal L_X.

This dictionary is useful because many code constructions can be organized by maps whose composition vanishes. It does not, by itself, supply a spatial cellulation, a boundary type, a local check schedule, or a sparse graph.

Surface Code owns the geometry of chains, boundaries, logical strings, detector graphs, and planar patches. Quantum LDPC Codes owns bounded check weight and qubit degree, Tanner graphs, redundant sparse checks, product constructions, asymptotic rate–distance results, and qLDPC-specific decoding and scheduling. A finite CSS matrix can be dense and nonlocal; the equation ∂2=0\partial^2=0 alone says nothing about low density or hardware locality.

This page owns the general conversion among positive binary check matrices, nested classical codes, normalized coset states, logical quotient spaces, axis distances, ordered CSS syndromes, and the Pauli correctability classification. It also owns the algebraic statement that bitwise CNOT preserves identical CSS blocks and the extra-structure warnings for Hadamard and phase gates.

Stabilizer Formalism retains general Pauli and symplectic algebra, projectors, normalizers, Cliffords, and tableaus. Why Quantum Error Correction Is Possible retains the general exact and approximate correctability theorems. Shor and Steane retain their complete finite code conventions, ledgers, recoveries, distance proofs, and code-specific operations; Five-Qubit Code retains the perfect non-CSS comparison.

Syndrome Measurement owns physical check instruments and detector records; Decoders owns probabilistic logical-class inference; Fault-Tolerant Gates owns protected gadgets and universal completion. Surface Code retains patch geometry and lattice surgery, while Quantum LDPC Codes retains sparsity, Tanner graphs, product families, asymptotics, and architecture evidence.

Color Codes owns 2-colex face checks, colored boundaries, topological logical representatives, and family-specific gate and decoder tradeoffs. Topological Codes owns local-check topology, homological syndromes, and active-versus-passive protection. Subsystem Codes owns gauge centers, bare and dressed logical quotients, gauge-derived syndromes, and Bacon–Shor constructions. This page retains the shared CSS matrix and subspace-code algebra rather than duplicating either specialization.

The same boundary applies to claims about performance. A valid pair HX,HZH_X,H_Z and a large algebraic distance do not establish a threshold, decoder runtime, hardware overhead, or experimental advantage. Those claims need a code family, extraction circuit, fault model, decoder, logical task, and evidence at the appropriate layer. Conversely, a hardware demonstration of one CSS block does not redefine the general construction. The matrices and quotients here are the stable interface through which those specialized owners state their additional assumptions.

For the five-qubit fixture, take C2=span⁡{11110,00111}C_2=\operatorname{span}\{11110,00111\} and the displayed eight-word C1C_1. Construct HXH_X from a spanning list in which 11110 is deliberately repeated, construct HZH_Z from a basis of C1⊥C_1^\perp, and determine mX,mZ,rX,rZ,km_X,m_Z,r_X,r_Z,k. Explain why the repeated physical parity equation may be recorded but does not encode one fewer logical qubit.

Solution

One permitted matrix is

HX′=(111100011111110),HZ=(1001101101).H_X'= \begin{pmatrix} 1&1&1&1&0\\ 0&0&1&1&1\\ 1&1&1&1&0 \end{pmatrix}, \qquad H_Z= \begin{pmatrix} 1&0&0&1&1\\ 0&1&1&0&1 \end{pmatrix}.

Every row of HX′H_X' lies in C1C_1, so HX′HZT=0H_X'H_Z^{\mathsf T}=0. The listed row counts are mX=3,mZ=2m_X=3,m_Z=2, but the first and third rows of HX′H_X' coincide. Hence rX=2,rZ=2r_X=2,r_Z=2 and

k=5−rX−rZ=1.k=5-r_X-r_Z=1.

The repeated row does not enlarge row⁡HX′\operatorname{row}H_X' and therefore does not add a stabilizer constraint. Measuring it twice could create two noisy records for inference, but the ideal common eigenspace is unchanged. Using mX+mZm_X+m_Z in the dimension formula would incorrectly give k=0k=0.

For arbitrary C2⊆C1C_2\subseteq C_1, prove that

∣[u]⟩=∣C2∣−1/2∑v∈C2∣u+v⟩\lvert[u]\rangle = |C_2|^{-1/2}\sum_{v\in C_2}\lvert u+v\rangle

is independent of the representative uu, is normalized, is orthogonal to states from different cosets, and is stabilized by X(C2)X(C_2) and Z(C1⊥)Z(C_1^\perp).

Solution

If u′=u+wu'=u+w with w∈C2w\in C_2, then v↦v+wv\mapsto v+w permutes C2C_2, so the two sums are identical. The map v↦u+vv\mapsto u+v is injective, giving ∣C2∣|C_2| distinct orthonormal computational states; the squared norm is therefore ∣C2∣−1∣C2∣=1|C_2|^{-1}|C_2|=1. Distinct cosets are disjoint, so their computational supports have zero overlap.

For h∈C2h\in C_2, X(h)X(h) sends the summand labeled by vv to the one labeled by v+hv+h, another permutation of the sum. For g∈C1⊥g\in C_1^\perp,

g(u+v)T=0g(u+v)^{\mathsf T}=0

because u,v∈C1u,v\in C_1, so Z(g)Z(g) gives phase +1+1 to every summand. The coset states are common +1+1 eigenstates of all declared checks. Their number is ∣C1/C2∣=2k|C_1/C_2|=2^k, so they form a full logical basis.

3. Construct paired logical quotient bases

Section titled “3. Construct paired logical quotient bases”

Show that the pairing between ker⁡HZ/row⁡HX\ker H_Z/\operatorname{row}H_X and ker⁡HX/row⁡HZ\ker H_X/\operatorname{row}H_Z is well defined and nondegenerate. Then use xL=01100x_L=01100 and zL=11000z_L=11000 to construct the paired basis for the fixture.

Solution

The pairing is xzTxz^{\mathsf T}. Adding h∈row⁡HXh\in\operatorname{row}H_X to xx does not change it because z∈ker⁡HXz\in\ker H_X. Adding g∈row⁡HZg\in\operatorname{row}H_Z to zz does not change it because x∈ker⁡HZx\in\ker H_Z. It is therefore well defined on quotient classes.

If an XX class pairs to zero with every ZZ class, its representative is orthogonal to ker⁡HX\ker H_X. Hence it belongs to

(ker⁡HX)⊥=row⁡HX(\ker H_X)^\perp=\operatorname{row}H_X

and is the trivial XX class. The same argument with sectors exchanged proves nondegeneracy on the other side. Equal quotient dimensions then permit bases with LXLZT=IkL_XL_Z^{\mathsf T}=I_k.

For the fixture, both quotients have dimension one. 01100⋅11000T=101100\cdot11000^{\mathsf T}=1, so the single-row matrices LX=(01100)L_X=(01100) and LZ=(11000)L_Z=(11000) already satisfy the required identity.

4. Rebuild the unequal-matrix detection fixture

Section titled “4. Rebuild the unequal-matrix detection fixture”

Starting only from the four generators

XXXXI,IIXXX,ZIIZZ,IZZIZ,XXXXI,\quad IIXXX,\quad ZIIZZ,\quad IZZIZ,

reconstruct HX,HZH_X,H_Z, verify commutation and ranks, find C2C_2 and C1C_1, and derive the two logical basis states and both axis distances.

Solution

Reading supports gives

HX=(1111000111),HZ=(1001101101).H_X= \begin{pmatrix} 1&1&1&1&0\\ 0&0&1&1&1 \end{pmatrix}, \qquad H_Z= \begin{pmatrix} 1&0&0&1&1\\ 0&1&1&0&1 \end{pmatrix}.

The four cross inner products vanish, and each matrix has rank two. Thus k=5−2−2=1k=5-2-2=1. Spanning the HXH_X rows gives

C2={00000,11110,00111,11001}.C_2=\{00000,11110,00111,11001\}.

Solving HZuT=0H_Zu^{\mathsf T}=0 adds the coset

01100+C2={01100,10010,01011,10101}.01100+C_2=\{01100,10010,01011,10101\}.

Uniform normalized sums over these two cosets give the displayed ∣0L⟩|0_L\rangle and ∣1L⟩|1_L\rangle. The supports 0110001100 and 1100011000 represent nontrivial paired logical XX and ZZ operators of weight two. Direct kernel enumeration finds no weight-one nontrivial class in either quotient, so dX=dZ=d=2d_X=d_Z=d=2.

5. Diagnose a same-syndrome logical collision

Section titled “5. Diagnose a same-syndrome logical collision”

Reconstruct the complete sixteen-entry identity-plus-single-Pauli ledger from the columns of HX,HZH_X,H_Z. Then compare X2X_2 with X3X_3 and Z1Z_1 with Z2Z_2. Apply the Pauli-specialized Knill–Laflamme condition to explain why the complete weight-one Pauli set is not correctable even though every nonidentity member has nonzero syndrome.

Solution

Identity gives 00|00. The five XjX_j rows copy the ordered columns of HZH_Z into the first half:

10, 01, 01, 10, 11.10,\ 01,\ 01,\ 10,\ 11.

The five ZjZ_j rows copy the columns of HXH_X into the second half:

10, 10, 11, 11, 01.10,\ 10,\ 11,\ 11,\ 01.

Each YjY_j row concatenates the corresponding two columns. This reconstructs all sixteen rows in the displayed order and gives twelve occupied sectors: identity, three pure-XX, three pure-ZZ, and five mixed sectors.

The two XX errors both have syndrome 01∣0001\mid00, while the two ZZ errors both have syndrome 00∣1000\mid10. Their pairwise products are

X2†X3=X2X3=X‾,Z1†Z2=Z1Z2=Z‾.X_2^\dagger X_3=X_2X_3=\overline X, \qquad Z_1^\dagger Z_2=Z_1Z_2=\overline Z.

Both products commute with every stabilizer, as equality of syndromes requires, but neither belongs to the stabilizer. They act nontrivially on the logical qubit. Consequently PEa†EbPPE_a^\dagger E_bP is a logical Pauli restricted to the code rather than a scalar multiple of PP.

In this fixture every nonidentity weight-one Pauli has nonzero syndrome, so each is detectable. More generally, a stabilizer error has zero syndrome but is also detectable in the Knill–Laflamme sense because it acts scalarly on the code. Correction of an entire set additionally requires every pair either to have distinct syndromes or to differ by a stabilizer. These repeated sectors fail that pairwise condition, consistently with distance two.

6. Retain correlations between CSS syndrome halves

Section titled “6. Retain correlations between CSS syndrome halves”

For the one-qubit prior

(pI,pX,pY,pZ)=(0.91,0.02,0.06,0.01),(p_I,p_X,p_Y,p_Z)=(0.91,0.02,0.06,0.01),

compute the marginal probabilities that the binary XX and ZZ components are present. Compare the product of those marginals with the true joint probability, and state what this does and does not imply about CSS decoding.

Solution

The XX component is present for physical XX or YY, so its marginal is

p(x=1)=pX+pY=0.08.p(x=1)=p_X+p_Y=0.08.

The ZZ component is present for ZZ or YY, giving

p(z=1)=pZ+pY=0.07.p(z=1)=p_Z+p_Y=0.07.

If the components were independent, their joint probability would be 0.08×0.07=0.00560.08\times0.07=0.0056. The actual joint event is physical YY, with probability 0.060.06. The product model understates it by a factor 0.06/0.0056≈10.70.06/0.0056\approx10.7.

Nothing is wrong with the CSS equations sZ=HZxTs_Z=H_Zx^{\mathsf T} and sX=HXzTs_X=H_Xz^{\mathsf T}; they remain exact. What fails is the extra factorized prior. Separate decoders are optimal only under appropriate noise and decision assumptions. A general decoder should retain joint information and sum probabilities over stabilizer-equivalent physical representatives when comparing logical classes.

Prove that bitwise CNOT preserves two identical CSS blocks. Then decide what bare tensorwise Hadamard and phase gates do to the five-qubit fixture, and explain why none of these algebraic calculations alone establishes a fault-tolerant universal gate set.

Solution

Under bitwise CNOT, a control X(h)X(h) becomes X(h)X(h) on both blocks and a target Z(g)Z(g) becomes Z(g)Z(g) on both blocks. These products remain in the joint stabilizer, while target X(h)X(h) and control Z(g)Z(g) remain unchanged. The logical cosets transform as ([u],[v])↦([u],[u+v])([u],[v])\mapsto([u],[u+v]), so paired quotient bases see logical CNOT.

Hadamard swaps the two row spaces. The fixture has row⁡HX≠row⁡HZ\operatorname{row}H_X\ne\operatorname{row}H_Z, so bare H⊗5H^{\otimes5} does not preserve its exact stabilizer. Tensorwise SS maps X(v)X(v) to iwt⁡(v)X(v)Z(v)i^{\operatorname{wt}(v)}X(v)Z(v). The first XX support 11110 has weight four and lies in row⁡HZ\operatorname{row}H_Z, but the second, 00111, has weight three and is not in row⁡HZ\operatorname{row}H_Z. Its image therefore fails both the required ZZ-support containment and the positive stabilizer phase/sign condition. Bare S⊗5S^{\otimes5} does not preserve the fixture.

Even a preserving tensor product must be audited under faults, ancillas, measurements, and recovery. Eastin–Knill also forbids a universal transversal unitary set under its assumptions. Algebraic normalization, fault tolerance, and universality are three distinct claims.

8. Audit a chain complex and its ownership boundary

Section titled “8. Audit a chain complex and its ownership boundary”

For general HX,HZH_X,H_Z, verify both zero compositions, identify the two middle homologies, and list one additional assumption needed to infer each of: geometric locality, a qLDPC presentation, and a physical extraction circuit.

Solution

The CSS equation gives

HXHZT=0,H_XH_Z^{\mathsf T}=0,

and transposition gives

HZHXT=0.H_ZH_X^{\mathsf T}=0.

Therefore the middle homologies are

ker⁡HX/im⁡HZT=LZ,ker⁡HZ/im⁡HXT=LX.\ker H_X/\operatorname{im}H_Z^{\mathsf T}=\mathcal L_Z, \qquad \ker H_Z/\operatorname{im}H_X^{\mathsf T}=\mathcal L_X.

No geometry follows without an embedding or cellulation that assigns the binary coordinates and maps to spatial objects. No qLDPC claim follows without a family of presentations having uniformly bounded row and column weights. No extraction circuit follows without ancillas, a gate schedule, preparation and measurement conventions, and a fault model. The chain complex captures zero composition and logical quotients; Surface Code, Quantum LDPC Codes, and Syndrome Measurement own those three additional layers respectively.

  • A. R. Calderbank and P. W. Shor, “Good quantum error-correcting codes exist,” Physical Review A 54, 1098–1105 (1996), doi:10.1103/PhysRevA.54.1098.
  • B. Eastin and E. Knill, “Restrictions on transversal encoded quantum gate sets,” Physical Review Letters 102, 110502 (2009), doi:10.1103/PhysRevLett.102.110502.
  • D. Gottesman, Stabilizer Codes and Quantum Error Correction, Ph.D. thesis, California Institute of Technology (1997), doi:10.7907/rzr7-dt72, arXiv:quant-ph/9705052.
  • E. Knill and R. Laflamme, “Theory of quantum error-correcting codes,” Physical Review A 55, 900–911 (1997), doi:10.1103/PhysRevA.55.900.
  • F. J. MacWilliams and N. J. A. Sloane, The Theory of Error-Correcting Codes, North-Holland Mathematical Library 16, North-Holland, Amsterdam (1977), ISBN 978-0-444-85009-6.
  • M. A. Nielsen and I. L. Chuang, Quantum Computation and Quantum Information, 10th Anniversary ed., Cambridge University Press (2010), doi:10.1017/CBO9780511976667.
  • A. M. Steane, “Error correcting codes in quantum theory,” Physical Review Letters 77, 793–797 (1996), doi:10.1103/PhysRevLett.77.793.
  • A. M. Steane, “Simple quantum error-correcting codes,” Physical Review A 54, 4741–4751 (1996), doi:10.1103/PhysRevA.54.4741.