The theory of quantum error correction plays a prominent role in the practical realization and engineering of
quantum computing and quantum communication devices. The first quantum
error-correcting codes are strikingly similar to classical block codes in their
operation and performance. Quantum error-correcting codes restore a noisy,
decohered quantum state to a pure quantum state. A
stabilizer quantum error-correcting code appends ancilla qubits
to qubits that we want to protect. A unitary encoding circuit rotates the
global state into a subspace of a larger Hilbert space. This highly entangled,
encoded state corrects for local noisy errors. A quantum error-correcting code makes quantum computation
and quantum communication practical by providing a way for a sender and
receiver to simulate a noiseless qubit channel given a noisy qubit channel
whose noise conforms to a particular error model.
The stabilizer theory of quantum error correction allows one to import some
classical binary or quaternary codes for use as a quantum code. The only
"catch" when importing is that the
classical code must satisfy the dual-containing (or self-orthogonality)
constraint. Researchers have found many examples of classical codes satisfying
this constraint, but most classical codes do not. Nevertheless, it is still useful to import classical codes in this way (though, see how the entanglement-assisted stabilizer formalism overcomes this difficulty).
Mathematical background
The Stabilizer formalism exploits elements of
the Pauli group
in formulating quantum error-correcting codes. The set
consists of the Pauli operators:

The above operators act on a single qubit---a state represented by a vector in a two-dimensional
Hilbert space. Operators in
have eigenvalues
and either commute
or anti-commute. The set
consists of
-fold tensor products of
Pauli operators:

Elements of
act on a quantum register of
qubits. We
occasionally omit tensor product symbols in what follows so that

The
-fold Pauli group
plays an important role for both the encoding circuit and the
error-correction procedure of a quantum stabilizer code over
qubits.
Definition
Let us define an
stabilizer quantum error-correcting
code to encode
logical qubits into
physical qubits. The rate of such a
code is
. Its stabilizer
is an abelian subgroup of the
-fold Pauli group
:
.
does not contain the operator
. The simultaneous
-eigenspace of the operators constitutes the codespace. The
codespace has dimension
so that we can encode
qubits into it. The
stabilizer
has a minimal representation in terms of
independent generators

The generators are
independent in the sense that none of them is a product of any other two (up
to a global phase). The operators
function in the same
way as a parity check matrix does for a classical linear block code.
Stabilizer error-correction conditions
One of the fundamental notions in quantum error correction theory is that it
suffices to correct a discrete error set with support in the Pauli group
. Suppose that the errors affecting an
encoded quantum state are a subset
of the Pauli group
:

Because
and
are both subsets of
, an error
that affects an
encoded quantum state either commutes or anticommutes with any particular
element
in
. The error
is correctable if it
anticommutes with an element
in
. An anticommuting error
is detectable by measuring each element
in
and
computing a syndrome
identifying
. The syndrome is a binary
vector
with length
whose elements identify whether the
error
commutes or anticommutes with each
. An error
that commutes with every element
in
is correctable if
and only if it is in
. It corrupts the encoded state if it
commutes with every element of
but does not lie in
. So we compactly summarize the stabilizer error-correcting conditions: a
stabilizer code can correct any errors
in
if

or

where
is the centralizer of
(i.e., the subgroup of elements that commute with all members of
, also known as the commutant).
A simple but useful mapping exists between elements of
and the binary
vector space
. This mapping gives a
simplification of quantum error correction theory. It represents quantum codes
with binary vectors and binary operations rather than with Pauli operators and
matrix operations respectively.
We first give the mapping for the one-qubit case. Suppose
is a set of equivalence classes of an operator
that have the same phase:
![{\displaystyle \left[A\right]=\left\{\beta A\ |\ \beta \in \mathbb {C} ,\ \left\vert \beta \right\vert =1\right\}.}](/media/api/rest_v1/media/math/render/svg/fd49593693fe70823827513bbb79051321af4131)
Let
be the set of phase-free Pauli operators where
.
Define the map
as

Suppose
. Let us employ the
shorthand
and
where
,
,
,
. For
example, suppose
. Then
. The
map
induces an isomorphism
because addition of vectors
in
is equivalent to multiplication of
Pauli operators up to a global phase:
![{\displaystyle \left[N\left(u+v\right)\right]=\left[N\left(u\right)\right]\left[N\left(v\right)\right].}](/media/api/rest_v1/media/math/render/svg/84c72186bd8d9741f99407d37dd32e804bf4a0e5)
Let
denote the symplectic product between two elements
:

The symplectic product
gives the commutation relations of elements of
:

The symplectic product and the mapping
thus give a useful way to phrase
Pauli relations in terms of binary algebra.
The extension of the above definitions and mapping
to multiple qubits is
straightforward. Let
denote an
arbitrary element of
. We can similarly define the phase-free
-qubit Pauli group
where
![{\displaystyle \left[\mathbf {A} \right]=\left\{\beta \mathbf {A} \ |\ \beta \in \mathbb {C} ,\ \left\vert \beta \right\vert =1\right\}.}](/media/api/rest_v1/media/math/render/svg/6552c351391c46e4a10ec670ffdcea07011c2a83)
The group operation
for the above equivalence class is as follows:
![{\displaystyle \left[\mathbf {A} \right]\ast \left[\mathbf {B} \right]\equiv \left[A_{1}\right]\ast \left[B_{1}\right]\otimes \cdots \otimes \left[A_{n}\right]\ast \left[B_{n}\right]=\left[A_{1}B_{1}\right]\otimes \cdots \otimes \left[A_{n}B_{n}\right]=\left[\mathbf {AB} \right].}](/media/api/rest_v1/media/math/render/svg/ce39a8417c2e35337f743ae919d79a2141e7c490)
The equivalence class
forms a commutative group
under operation
. Consider the
-dimensional vector space

It forms the commutative group
with
operation
defined as binary vector addition. We employ the notation
to represent any vectors
respectively. Each
vector
and
has elements
and
respectively with
similar representations for
and
.
The symplectic product
of
and
is

or

where
and
. Let us define a map
as follows:

Let

so that
and
belong to the same
equivalence class:
![{\displaystyle \left[\mathbf {N} \left(\mathbf {u} \right)\right]=\left[\mathbf {Z} \left(\mathbf {z} \right)\mathbf {X} \left(\mathbf {x} \right)\right].}](/media/api/rest_v1/media/math/render/svg/ea6db5042a87808bdf9e86fb42ecdb90f8ee3ee1)
The map
is an isomorphism for the same
reason given as the previous case:
![{\displaystyle \left[\mathbf {N} \left(\mathbf {u+v} \right)\right]=\left[\mathbf {N} \left(\mathbf {u} \right)\right]\left[\mathbf {N} \left(\mathbf {v} \right)\right],}](/media/api/rest_v1/media/math/render/svg/891c51f5b7994f30b80c859f641f9f4dd2d0301a)
where
. The symplectic product
captures the commutation relations of any operators
and
:

The above binary representation and symplectic algebra are useful in making
the relation between classical linear error correction and quantum error correction more explicit.
By comparing quantum error correcting codes in this language to symplectic vector spaces, we can see the following. A symplectic subspace corresponds to a direct sum of Pauli algebras (i.e., encoded qubits), while an isotropic subspace corresponds to a set of stabilizers.
Example of a stabilizer code
An example of a stabilizer code is the five qubit
stabilizer code. It encodes
logical qubit
into
physical qubits and protects against an arbitrary single-qubit
error. Its stabilizer consists of
Pauli operators:

The above operators commute. Therefore, the codespace is the simultaneous
+1-eigenspace of the above operators. Suppose a single-qubit error occurs on
the encoded quantum register. A single-qubit error is in the set
where
denotes a Pauli error on qubit
.
It is straightforward to verify that any arbitrary single-qubit error has a
unique syndrome. The receiver corrects any single-qubit error by identifying
the syndrome and applying a corrective operation.
References
- D. Gottesman, "Stabilizer codes and quantum error correction," quant-ph/9705052, Caltech Ph.D. thesis. http://arxiv.org/abs/quant-ph/9705052
- P. W. Shor, “Scheme for reducing decoherence in quantum computer memory,” Phys. Rev. A, vol. 52, no. 4, pp. R2493–R2496, Oct 1995.
- A. R. Calderbank and P. W. Shor, “Good quantum error-correcting codes exist,” Phys. Rev. A, vol. 54, no. 2, pp. 1098–1105, Aug 1996. Available at http://arxiv.org/abs/quant-ph/9512032
- A. M. Steane, “Error correcting codes in quantum theory,” Phys. Rev. Lett., vol. 77, no. 5, pp. 793–797, Jul 1996.
- A. Calderbank, E. Rains, P. Shor, and N. Sloane, “Quantum error correction via codes over GF(4),” IEEE Trans. Inf. Theory, vol. 44, pp. 1369–1387, 1998. Available at http://arxiv.org/abs/quant-ph/9608006