Stabilizer code: Difference between revisions

Content deleted Content added
Moving the example closer to the definition. I cannot move it further up because it needs the notions of error and syndrome which are defined in the above paragraph.
 
(7 intermediate revisions by 5 users not shown)
Line 1:
{{Short description|Quantum error correction code}}
{{technical|date=April 2022}}
 
The theory of [[quantum error correction]] plays a prominent role in the practical realization and engineering of
In [[quantum computing]] and [[quantum communication]], a '''stabilizer code''' is a class of quantum [[code]]s for performing [[quantum error correction]]. The [[toric code]], and [[Toric code#Generalizations|surface codes]] more generally,<ref>{{cite web|access-date=2024-01-12|title=What is the "surface code" in the context of quantum error correction?|url=https://quantumcomputing.stackexchange.com/questions/2106/what-is-the-surface-code-in-the-context-of-quantum-error-correction|website=Quantum Computing Stack Exchange}}</ref> are types of stabilizer codes considered very important for the practical realization of quantum information processing.
[[quantum computing]] and [[quantum communication]] devices. The first quantum
 
error-correcting codes are strikingly similar to [[error correction|classical block codes]] in their
== Conceptual background ==
operation and performance. Quantum error-correcting codes restore a noisy,
 
operation and performance. Quantum error-correcting codes restore a noisy,
[[decoherence|decohered]] [[quantum state]] to a pure quantum state. A
[[Group action (mathematics)#Orbits and stabilizers|stabilizer]] quantum error-correcting code appends [[Ancilla (quantum computing)|ancilla qubits]]
Line 12 ⟶ 14:
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 first quantum error-correcting codes are strikingly similar to [[error correction|classical block codes]] in their operation and performance.
 
The stabilizer theory of [[quantum error correction]] allows one to import some
Line 83 ⟶ 85:
 
The generators are
independent in the sense that none of them isare a product of any other two (up
to a [[Quantum state|global phase]]). The operators <math>g_{1},\ldots,g_{n-k}</math> function in the same
way as a [[parity check matrix]] does for a classical [[linear block code]].
Line 90 ⟶ 92:
 
One of the fundamental notions in quantum error correction theory is that it
suffices to correct a [[Discrete set|discrete]] error set with [[Support (mathematics)|support]] in the [[Pauli group]]
<math>\Pi^{n}</math>. Suppose that the errors affecting an
encoded quantum state are a subset <math>\mathcal{E}</math> of the [[Pauli group]] <math>\Pi^{n}</math>:
:<math>\mathcal{E}\subset\Pi^{n}.</math>
 
Line 116 ⟶ 118:
where <math>\mathcal{Z}\left( \mathcal{S}
\right) </math> is the [[centralizer]] of <math>\mathcal{S}</math> (i.e., the subgroup of elements that commute with all members of <math>\mathcal{S}</math>, also known as the commutant).
 
==Simple example of a stabilizer code==
A simple example of a stabilizer code is a three qubit
<math>\left[[ 3,1,3\right]] </math> stabilizer code. It encodes <math>k=1</math> logical qubit
into <math>n=3</math> physical qubits and protects against a single-bit flip
error in the set <math>\left\{
X_{i}\right\}</math>. This does not protect against other Pauli errors such as phase flip errors in the set <math>\left\{
Y_{i}\right\}</math>.or <math>\left\{
Z_{i}\right\}</math>. This has code distance <math>d=3</math>. Its stabilizer consists of <math>n-k=2</math> Pauli operators:
:<math>
\begin{array}
[c]{ccc}
g_{1} & = & Z & Z & I\\
g_{2} & = & I & Z & Z\\
\end{array}
</math>
If there are no bit-flip errors, both operators <math>g_{1}</math> and <math>g_{2}</math> commute, the syndrome is +1,+1, and no errors are detected.
 
If there is a bit-flip error on the first encoded qubit, operator <math>g_{1}</math> will anti-commute and <math>g_{2}</math> commute, the syndrome is -1,+1, and the error is detected. If there is a bit-flip error on the second encoded qubit, operator <math>g_{1}</math> will anti-commute and <math>g_{2}</math> anti-commute, the syndrome is -1,-1, and the error is detected. If there is a bit-flip error on the third encoded qubit, operator <math>g_{1}</math> will commute and <math>g_{2}</math> anti-commute, the syndrome is +1,-1, and the error is detected.
 
==Example of a stabilizer code==
Line 140 ⟶ 161:
the syndrome via a [[parity measurement]] and applying a corrective operation.
 
== Relation between [[Pauli group]] and binary vectors ==
 
A simple but useful mapping exists between elements of <math>\Pi</math> and the binary
Line 269 ⟶ 290:
</math>
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 space]]s, we can see the following. A [[Symplectic vector space#Subspaces|symplectic]] subspace corresponds to a [[direct sum]] of Pauli algebras (i.e., encoded qubits), while an [[Symplectic vector space#Subspaces|isotropic]] subspace corresponds to a set of stabilizers.
 
==References==
{{Reflist}}
 
* D. Gottesman, "Stabilizer codes and quantum error correction," quant-ph/9705052, Caltech Ph.D. thesis. https://arxiv.org/abs/quant-ph/9705052