Steane code

From HandWiki
Short description: Code for quantum correction

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.

Its check matrix in standard form is

[H00H]

where H is the parity-check matrix of the Hamming code and is given by

H=[100101101011010010111].

The 7,1,3 Steane code is the first in the family of quantum Hamming codes, codes with parameters 2r1,2r12r,3 for integers r3. It is also a quantum color code.

Expression in the stabilizer formalism

In a quantum error-correcting code, the codespace is the subspace of the overall Hilbert space where all logical states live. In an n-qubit stabilizer code, we can describe this subspace by its Pauli stabilizing group, the set of all n-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 2-dimensional subspace of its 27-dimensional Hilbert space.

In the stabilizer formalism, the Steane code has 6 generators:

IIIXXXXIXXIIXXXIXIXIXIIIZZZZIZZIIZZZIZIZIZ.

Note that each of the above generators is the tensor product of 7 single-qubit Pauli operations. For instance, IIIXXXX is just shorthand for IIIXXXX, that is, an identity on the first three qubits and an X gate on each of the last four qubits. The tensor products are often omitted in notation for brevity.

The logical X and Z gates are

XL=XXXXXXXZL=ZZZZZZZ.

The logical |0 and |1 states of the Steane code are

|0L=18[|0000000+|1010101+|0110011+|1100110+|0001111+|1011010+|0111100+|1101001]|1L=XL|0L.

Arbitrary codestates are of the form |ψ=α|0L+β|1L.

References