The Steane code is a tool in quantum error correction introduced by Andrew Steane in 1996. It is a CSS code (Calderbank-Shor-Steane), using the classical binary [7,4,3] Hamming code to correct for qubit flip errors (X errors) and the dual of the Hamming code, the [7,3,4] code, to correct for phase flip errors (Z errors). The Steane code encodes one logical qubit in 7 physical qubits and is able to correct arbitrary single qubit errors.
where H is the parity-check matrix of the Hamming code and is given by
The Steane code is the first in the family of quantum Hamming codes, codes with parameters for integers . It is also a quantum color code.
In a quantum error correcting code, the codespace is the subspace of the overall Hilbert space where all logical states live. In an -qubit stabilizer code, we can describe this subspace by its Pauli stabilizing group, the set of all -qubit Pauli operators which stabilize every logical state. The stabilizer formalism allows us to define the codespace of a stabilizer code by specifying its Pauli stabilizing group. We can efficiently describe this exponentially large group by listing its generators.
Since the Steane code encodes one logical qubit in 7 physical qubits, the codespace for the Steane code is a -dimensional subspace of its -dimensional Hilbert space.
In the stabilizer formalism, the Steane code has 6 generators:
Note that each of the above generators is the tensor product of 7 single-qubit Pauli operations. For instance, is just shorthand for , that is, an identity on the first three qubits and an gate on each of the last four qubits. The tensor products are often omitted in notation for brevity.
The logical and gates are
The logical and states of the Steane code are
Arbitrary codestates are of the form .