Computing Library › Quantum Error Correction
Quantum Error Correction

Subsystem Codes

Subsystem codes ignore some encoded degrees of freedom as gauge qubits, simplifying syndrome extraction and enabling flexible fault-tolerant operations.

Gauge degrees of freedom

A subsystem code splits the code space into a logical subsystem and a gauge subsystem. Only the logical subsystem carries protected information; the gauge qubits are extra degrees of freedom whose state does not matter and can change freely. Formally, the stabilizer group is enlarged to a non-abelian gauge group, and errors that act only on the gauge qubits require no correction. This deliberate waste buys operational flexibility.

Why gauge freedom helps

Kronos motion — error correction

Because gauge operators need not be preserved, the high-weight stabilizer checks of an ordinary code can often be broken into products of lower-weight gauge checks that are easier to measure. The famous example is the Bacon-Shor code, where the four-body stabilizers factor into two-body gauge checks. Measuring only two-qubit operators simplifies hardware and can make syndrome extraction more robust, since low-weight measurements spread fewer errors.

Gauge fixing and applications

Choosing to fix the gauge qubits into definite states, called gauge fixing, converts a subsystem code into an ordinary stabilizer code and can enable gates that would otherwise be forbidden. This is one route around the Eastin-Knill theorem: switching gauges lets different gates be transversal at different times, supplying a universal set without magic states in some constructions, such as the three-dimensional gauge color code.

Subsystem codes include the Bacon-Shor code and subsystem surface codes, and their flexibility in measurement weight and gate implementation makes them a valuable design tool. The trade-off is usually a lower distance or threshold for a given number of qubits, so they are chosen when the operational simplicity outweighs the loss in raw protection.