|
|
Line 1: |
Line 1: |
| {{Cleanup|date=March 2010}}
| | Nice to satisfy you, I am Marvella Shryock. South Dakota is where I've usually been residing. Body building is what my family and I appreciate. He used to be unemployed but now he is a computer operator but his promotion by no means arrives.<br><br>Have a look at my weblog; [http://withlk.com/board_RNsI08/10421 at home std test] |
| 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 [[error correction|classical block codes]] in their
| |
| operation and performance. Quantum error-correcting codes restore a noisy,
| |
| [[decoherence|decohered]] [[quantum state]] to a pure quantum state. A
| |
| [[Group_action#Orbits_and_stabilizers|stabilizer]] quantum error-correcting code appends [[Ancilla (quantum computing)|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 [[Quantum entanglement|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]]
| |
| that has 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 code|dual-containing]] or [[dual code|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]] <math>\Pi</math> in formulating quantum error-correcting codes. The set
| |
| <math>\Pi=\left\{ I,X,Y,Z\right\} </math> consists of the [[Pauli operators]]:
| |
| :<math>
| |
| I\equiv
| |
| \begin{bmatrix}
| |
| 1 & 0\\
| |
| 0 & 1
| |
| \end{bmatrix}
| |
| ,\ X\equiv
| |
| \begin{bmatrix}
| |
| 0 & 1\\
| |
| 1 & 0
| |
| \end{bmatrix}
| |
| ,\ Y\equiv
| |
| \begin{bmatrix}
| |
| 0 & -i\\
| |
| i & 0
| |
| \end{bmatrix}
| |
| ,\ Z\equiv
| |
| \begin{bmatrix}
| |
| 1 & 0\\
| |
| 0 & -1
| |
| \end{bmatrix}
| |
| . | |
| </math>
| |
| The above operators act on a single [[qubit]]---a state represented by a vector in a two-dimensional
| |
| [[Hilbert space]]. Operators in <math>\Pi</math> have [[eigenvalues]] <math>\pm1</math> and either [[Commutative property|commute]]
| |
| or [[anti-commute]]. The set <math>\Pi^{n}</math> consists of <math>n</math>-fold [[tensor product]]s of
| |
| [[Pauli operator]]s:
| |
| :<math>
| |
| \Pi^{n}=\left\{
| |
| \begin{array}
| |
| [c]{c}
| |
| e^{i\phi}A_{1}\otimes\cdots\otimes A_{n}:\forall j\in\left\{ 1,\ldots
| |
| ,n\right\} A_{j}\in\Pi,\ \ \phi\in\left\{ 0,\pi/2,\pi,3\pi/2\right\}
| |
| \end{array}
| |
| \right\} .
| |
| </math>
| |
| Elements of <math>\Pi^{n}</math> act on a quantum register of <math>n</math> qubits. We
| |
| occasionally omit [[tensor product]] symbols in what follows so that
| |
| :<math>A_{1}\cdots A_{n}\equiv A_{1}\otimes\cdots\otimes A_{n}.</math>
| |
| The <math>n</math>-fold [[Pauli group]]
| |
| <math>\Pi^{n}</math> plays an important role for both the encoding circuit and the
| |
| error-correction procedure of a quantum stabilizer code over <math>n</math> qubits.
| |
| | |
| == Definition ==
| |
| | |
| Let us define an <math>\left[ n,k\right] </math> stabilizer quantum error-correcting
| |
| code to encode <math>k</math> logical qubits into <math>n</math> physical qubits. The rate of such a
| |
| code is <math>k/n</math>. Its stabilizer <math>\mathcal{S}</math> is an [[abelian group|abelian]] [[subgroup]] of the
| |
| <math>n</math>-fold Pauli group <math>\Pi^{n}</math>: <math>\mathcal{S}\subset\Pi^{n}</math>. <math>\mathcal{S}</math>
| |
| does not contain the operator <math>-I^{\otimes n}</math>. The simultaneous
| |
| <math>+1</math>-[[eigenspace]] of the operators constitutes the ''codespace''. The
| |
| codespace has dimension <math>2^{k}</math> so that we can encode <math>k</math> qubits into it. The
| |
| stabilizer <math>\mathcal{S}</math> has a minimal [[Representation (mathematics)|representation]] in terms of <math>n-k</math>
| |
| independent generators
| |
| :<math>\left\{ g_{1},\ldots,g_{n-k}\ |\ \forall i\in\left\{
| |
| 1,\ldots,n-k\right\} ,\ g_{i}\in\mathcal{S}\right\} .</math>
| |
| | |
| The generators are
| |
| independent in the sense that none of them is 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]].
| |
| | |
| == Stabilizer error-correction conditions ==
| |
| | |
| 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>
| |
| | |
| An error <math>E\in\mathcal{E}</math> that affects an
| |
| encoded quantum state either [[Commutative property|commute]]s or [[anticommute]]s with any particular
| |
| element <math>g</math> in <math>\mathcal{S}</math>. The error <math>E</math> is correctable if it
| |
| anticommutes with an element <math>g</math> in <math>\mathcal{S}</math>. An anticommuting error
| |
| <math>E</math> is detectable by [[quantum measurement|measuring]] each element <math>g</math> in <math>\mathcal{S}</math> and
| |
| computing a [[syndrome]] <math>\mathbf{r}</math> identifying <math>E</math>. The syndrome is a binary
| |
| vector <math>\mathbf{r}</math> with length <math>n-k</math> whose elements identify whether the
| |
| error <math>E</math> commutes or anticommutes with each <math>g\in\mathcal{S}</math>. An error
| |
| <math>E</math> that commutes with every element <math>g</math> in <math>\mathcal{S}</math> is correctable if
| |
| and only if it is in <math>\mathcal{S}</math>. It corrupts the encoded state if it
| |
| commutes with every element of <math>\mathcal{S}</math> but does not lie in <math>\mathcal{S}
| |
| </math>. So we compactly summarize the stabilizer error-correcting conditions: a
| |
| stabilizer code can correct any errors <math>E_{1},E_{2}</math> in <math>\mathcal{E}</math> if
| |
| :<math>E_{1}^{\dagger}E_{2}\notin\mathcal{Z}\left( \mathcal{S}\right) </math>
| |
| | |
| or
| |
| | |
| :<math>E_{1}^{\dagger}E_{2}\in\mathcal{S}</math>
| |
| | |
| where <math>\mathcal{Z}\left( \mathcal{S}
| |
| \right) </math> is the [[centralizer]] of <math>\mathcal{S}</math>.
| |
| | |
| == Relation between [[Pauli group]] and binary vectors ==
| |
| | |
| A simple but useful mapping exists between elements of <math>\Pi</math> and the binary
| |
| [[vector space]] <math>\left( \mathbb{Z}_{2}\right) ^{2}</math>. This mapping gives a
| |
| simplification of quantum error correction theory. It represents quantum codes
| |
| with [[binary vector]]s and [[binary operation]]s rather than with [[Pauli operator]]s and
| |
| [[matrix operation]]s respectively.
| |
| | |
| We first give the mapping for the one-qubit case. Suppose <math>\left[ A\right] </math>
| |
| is a set of [[equivalence class]]es of an [[Operator (physics)|operator]] <math>A</math> that have the same [[phase (waves)|phase]]:
| |
| :<math>
| |
| \left[ A\right] =\left\{ \beta A\ |\ \beta\in\mathbb{C},\ \left\vert
| |
| \beta\right\vert =1\right\} .
| |
| </math>
| |
| | |
| Let <math>\left[ \Pi\right] </math> be the set of phase-free Pauli operators where
| |
| <math>\left[ \Pi\right] =\left\{ \left[ A\right] \ |\ A\in\Pi\right\} </math>.
| |
| Define the map <math>N:\left( \mathbb{Z}_{2}\right) ^{2}\rightarrow\Pi</math> as
| |
| :<math>
| |
| 00 \to I, \,\,
| |
| 01 \to X, \,\,
| |
| 11 \to Y, \,\,
| |
| 10 \to Z
| |
| </math>
| |
| | |
| Suppose <math>u,v\in\left( \mathbb{Z}_{2}\right) ^{2}</math>. Let us employ the
| |
| shorthand <math>u=\left( z|x\right) </math> and <math>v=\left( z^{\prime}|x^{\prime
| |
| }\right) </math> where <math>z</math>, <math>x</math>, <math>z^{\prime}</math>, <math>x^{\prime}\in\mathbb{Z}_{2}</math>. For
| |
| example, suppose <math>u=\left( 0|1\right) </math>. Then <math>N\left( u\right) =X</math>. The
| |
| map <math>N</math> induces an [[isomorphism]] <math>\left[ N\right] :\left( \mathbb{Z}
| |
| _{2}\right) ^{2}\rightarrow\left[ \Pi\right] </math> because addition of vectors
| |
| in <math>\left( \mathbb{Z}_{2}\right) ^{2}</math> is equivalent to multiplication of
| |
| Pauli operators up to a global phase:
| |
| :<math>
| |
| \left[ N\left( u+v\right) \right] =\left[ N\left( u\right) \right]
| |
| \left[ N\left( v\right) \right] .
| |
| </math>
| |
| | |
| Let <math>\odot</math> denote the [[symplectic product]] between two elements <math>u,v\in\left(
| |
| \mathbb{Z}_{2}\right) ^{2}</math>:
| |
| :<math>
| |
| u\odot v\equiv zx^{\prime}-xz^{\prime}.
| |
| </math>
| |
| The symplectic product <math>\odot</math> gives the [[Commutative property|commutation]] relations of elements of
| |
| <math>\Pi</math>:
| |
| :<math>
| |
| N\left( u\right) N\left( v\right) =\left( -1\right) ^{\left( u\odot
| |
| v\right) }N\left( v\right) N\left( u\right) .
| |
| </math>
| |
| | |
| The symplectic product and the mapping <math>N</math> thus give a useful way to phrase
| |
| Pauli relations in terms of [[Boolean algebra (logic)|binary algebra]].
| |
| The extension of the above definitions and mapping <math>N</math> to multiple qubits is
| |
| straightforward. Let <math>\mathbf{A}=A_{1}\otimes\cdots\otimes A_{n}</math> denote an
| |
| arbitrary element of <math>\Pi^{n}</math>. We can similarly define the phase-free
| |
| <math>n</math>-qubit Pauli group <math>\left[ \Pi^{n}\right] =\left\{ \left[
| |
| \mathbf{A}\right] \ |\ \mathbf{A}\in\Pi^{n}\right\} </math> where
| |
| :<math>
| |
| \left[ \mathbf{A}\right] =\left\{ \beta\mathbf{A}\ |\ \beta\in
| |
| \mathbb{C},\ \left\vert \beta\right\vert =1\right\} .
| |
| </math>
| |
| | |
| The [[group operation]] <math>\ast</math> for the above equivalence class is as follows:
| |
| :<math> \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] .
| |
| </math>
| |
| The equivalence class <math>\left[ \Pi^{n}\right] </math> forms a [[commutative group]]
| |
| under operation <math>\ast</math>. Consider the <math>2n</math>-dimensional [[vector space]]
| |
| :<math>
| |
| \left( \mathbb{Z}_{2}\right) ^{2n}=\left\{ \left( \mathbf{z,x}\right)
| |
| :\mathbf{z},\mathbf{x}\in\left( \mathbb{Z}_{2}\right) ^{n}\right\} .
| |
| </math>
| |
| It forms the commutative group <math>(\left( \mathbb{Z}_{2}\right) ^{2n},+)</math> with
| |
| operation <math>+</math> defined as binary vector addition. We employ the notation
| |
| <math>\mathbf{u}=\left( \mathbf{z}|\mathbf{x}\right) ,\mathbf{v}=\left(
| |
| \mathbf{z}^{\prime}|\mathbf{x}^{\prime}\right) </math> to represent any vectors
| |
| <math>\mathbf{u,v}\in\left( \mathbb{Z}_{2}\right) ^{2n}</math> respectively. Each
| |
| vector <math>\mathbf{z}</math> and <math>\mathbf{x}</math> has elements <math>\left( z_{1},\ldots
| |
| ,z_{n}\right) </math> and <math>\left( x_{1},\ldots,x_{n}\right) </math> respectively with
| |
| similar representations for <math>\mathbf{z}^{\prime}</math> and <math>\mathbf{x}^{\prime}</math>.
| |
| The ''symplectic product'' <math>\odot</math> of <math>\mathbf{u}</math> and <math>\mathbf{v}</math> is
| |
| :<math>
| |
| \mathbf{u}\odot\mathbf{v\equiv}\sum_{i=1}^{n}z_{i}x_{i}^{\prime}-x_{i}
| |
| z_{i}^{\prime},
| |
| </math>
| |
| or
| |
| :<math>
| |
| \mathbf{u}\odot\mathbf{v\equiv}\sum_{i=1}^{n}u_{i}\odot v_{i},
| |
| </math>
| |
| where <math>u_{i}=\left( z_{i}|x_{i}\right) </math> and <math>v_{i}=\left( z_{i}^{\prime
| |
| }|x_{i}^{\prime}\right) </math>. Let us define a map <math>\mathbf{N}:\left(
| |
| \mathbb{Z}_{2}\right) ^{2n}\rightarrow\Pi^{n}</math> as follows:
| |
| :<math>
| |
| \mathbf{N}\left( \mathbf{u}\right) \equiv N\left( u_{1}\right)
| |
| \otimes\cdots\otimes N\left( u_{n}\right) .
| |
| </math>
| |
| Let
| |
| :<math>
| |
| \mathbf{X}\left( \mathbf{x}\right) \equiv X^{x_{1}}\otimes\cdots\otimes
| |
| X^{x_{n}}, \,\,\,\,\,\,\,
| |
| \mathbf{Z}\left( \mathbf{z}\right) \equiv Z^{z_{1}}\otimes\cdots\otimes
| |
| Z^{z_{n}},
| |
| </math>
| |
| so that <math>\mathbf{N}\left( \mathbf{u}\right) </math> and <math>\mathbf{Z}\left(
| |
| \mathbf{z}\right) \mathbf{X}\left( \mathbf{x}\right) </math> belong to the same
| |
| [[equivalence class]]:
| |
| :<math>
| |
| \left[ \mathbf{N}\left( \mathbf{u}\right) \right] =\left[ \mathbf{Z}
| |
| \left( \mathbf{z}\right) \mathbf{X}\left( \mathbf{x}\right) \right] .
| |
| </math>
| |
| The map <math>\left[ \mathbf{N}\right] :\left( \mathbb{Z}_{2}\right)
| |
| ^{2n}\rightarrow\left[ \Pi^{n}\right] </math> is an [[isomorphism]] for the same
| |
| reason given as the previous case:
| |
| :<math>
| |
| \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] ,
| |
| </math>
| |
| where <math>\mathbf{u,v}\in\left( \mathbb{Z}_{2}\right) ^{2n}</math>. The [[symplectic product]]
| |
| captures the commutation relations of any operators <math>\mathbf{N}\left(
| |
| \mathbf{u}\right) </math> and <math>\mathbf{N}\left( \mathbf{v}\right) </math>:
| |
| :<math>
| |
| \mathbf{N\left( \mathbf{u}\right) N}\left( \mathbf{v}\right) =\left(
| |
| -1\right) ^{\left( \mathbf{u}\odot\mathbf{v}\right) }\mathbf{N}\left(
| |
| \mathbf{v}\right) \mathbf{N}\left( \mathbf{u}\right) .
| |
| </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.
| |
| | |
| ==Example of a stabilizer code==
| |
| | |
| An example of a stabilizer code is the five qubit
| |
| <math>\left[ 5,1\right] </math> stabilizer code. It encodes <math>k=1</math> logical qubit
| |
| into <math>n=5</math> physical qubits and protects against an arbitrary single-qubit
| |
| error. Its stabilizer consists of <math>n-k=4</math> Pauli operators:
| |
| :<math>
| |
| \begin{array}
| |
| [c]{ccccccc}
| |
| g_{1} & = & X & Z & Z & X & I\\
| |
| g_{2} & = & I & X & Z & Z & X\\
| |
| g_{3} & = & X & I & X & Z & Z\\
| |
| g_{4} & = & Z & X & I & X & Z
| |
| \end{array}
| |
| </math>
| |
| 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 <math>\left\{
| |
| X_{i},Y_{i},Z_{i}\right\}</math> where <math>A_{i}</math> denotes a Pauli error on qubit <math>i</math>.
| |
| 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
| |
| | |
| | |
| {{Quantum computing}}
| |
| [[Category:Linear algebra]]
| |