Stabilizer codes

advertisement
3/24/2005
スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回
What is the stabilizer formalism?
z Represent
a quantum state by the
operators stabilizing it.
z Example: EPR state
Stabilizer codes
z
State (ordinary) representation
00 + 11
ψ =
z
2
Stabilizer: X1X2 and Z1Z2
X1 X 2 ψ = ψ ,
z
Z1 Z 2 ψ = ψ
Uniquely determined.
2
Pauli group on n qubits Gn
z Single
Æ
E = e0 I + e1 X + e2 Z + e3 XZ
Each M ∈ Gn is unitary
M-1 = M†
2. For each M ∈ Gn, M2 = ± I ≡ ± I⊗n
3. M is Hermitian or anti-Hermitian
1.
Useful to express errors in terms of Pauli
matrix
z Pauli
z
qubit error
Properties of Pauli group Gn
group
on one qubit
z
G1 = {±I, ±iI, ±X, ±iX, ±Y, ±iY, ±Z, ±iZ}
z
z
z
on two qubits
z
on n qubits
z
z
z
XY = iZ, YX = -iZ
X (iX) = iI
z
G2 = {±II, ±iII, ±IX, ±iIX, ±XI, ±iXI, L}
4.
Gn
If M2 = I, then M is Hermitian (M = M†)
If M2 = – I, then M is anti-Hermitian
(M = –M†)
Any two elements M, N ∈ Gn either
commute or anti-commute: MN = ± NM
3
Definition of stabilizers
z Stabilizer
Properties of stabilizers
S of the code:
z
|ψi ∈ VS iff M|ψi = |ψi for all M ∈ S
z S: subset of Gn (Pauli group on n qubits)
z Vector space VS stabilized by S
═
z
z
z
z
z
z
{X, Y, L}: Subgroup of G1
Vector stabilized by X and Y
Æ Stabilizer
z
2
z
5
Fumiko Yamaguchi <yamaguchi@stanford.edu>
(− I ) ψ = ψ ⇒ ψ = 0
Example:
z
(Subset of G2 )
S = {±I, ±X} (Subgroup of G1)
Vector stabilized by (-I)
If [M1, M2]≠ 0 (M1, M2 ∈ S) , VS = {|0i}
EPR state
S = {X1X2, Z2Z2}
VS = { 00 + 11 }
Example:
( XY − YX ) ψ = ψ ⇒ ψ = 0
≠0
z
If –I ∈ S, VS = {|0i}
z
simultaneous eigenspace with eigenvalue +1 of
all elements of S
z Example:
4
S for non-trivial vector space
–I ∉ S
All elements commute
6
1
スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回
Properties of stabilizers II
z Number
Number of encoded qubits
of encoded qubits
Use n qubits (n ≥ k)
z Generators of stabilizer {Mi} (i = 1,L, n-k)
z
M ∈ S must satisfy M2 = I
z
For each M ≠±I in Gn, the eigenvalues +1 and
–1 have equal degeneracy
z
z
Those elements are independent (no one can be
expressed as a product of others)
z Each element can be expressed as a product of
elements of {Mi}.
z
z
If M2 = –I, M cannot have the eigenvalue +1
For each M ≠±I, there is an N ∈ Gn that anticommutes with M; MN = –NM
z
z
Æ Code
subspace Vs has dimension 2k
Encode k qubits
≡
3/24/2005
z
z
M|ψi = |ψi
[Eigenvalue +1]
M(N|ψi) = –N|ψi
[Eigenvalue –1]
½ (2n) = 2n-1 mutually orthogonal states satisfy M|ψi = |ψi
For {Mi} (i = 1,L, n-k)
z
(½)n-k (2n) = 2k mutually orthogonal states satisfy
Mi|ψi = |ψi
7
Detection and correction of errors in
stabilizer formalism
z
z
Æ
z
Collective measurement of the generators
z
z
Condition for error recovery in stabilizer
formalism
Stabilizer generators {Mi} (i = 1,L, n-k) as
check operators
z
z
Detect and correct the error
z
z
Error operator Ea ∈ Pauli group either commutes or
anti-commutes with Mj
z
z
Ea commutes with Mj :
MjEa|ψi = EaMj|ψi = Ea|ψi
Ea anti-commutes with Mj :
MjEa|ψi = – EaMj|ψi = – Ea|ψi
2.
z
10
Error correcting code in stabilizer
formalism
z
preserves the code subspace
acts as logic operations on the encoded
qubits
z
z
Code subspace = Vector space VS stabilized
by S
Example: 3-qubit bit flip code
z
z
A stabilizer code with distance d
z
z
S = {I, Z1Z2, Z2Z3, Z1Z3}
Subspaces stabilized by
z
Each error E ∈ Gn of weight < d
z
Ea†Eb ∈ S; or
There is an M ∈ S that anti-commutes with
Ea†Eb
9
If Ea†Eb ∉ S commutes with stabilizer
z
hi|Ea†Eb|ji = Cabδi,j (∗)
Ea, Eb ∈ Ε
Ξ
|ii, |ji : encoded states (normalized)
Cab: independent of |ii, |ji
Condition (∗) is satisfied when
1.
When error correction fails
z
Condition for error recovery
z
No error: Mj = 1 for each generator
Error: Mj = –1 for some j
Error syndrome
z
8
z
z
lies in the stabilizer; or
anti-commutes with some generators of the
stabilizer
Æ
z
VS = {|000i, |111i} = Code subspace
S = hZ1Z2, Z2Z3i: using generators
z
z
11
Fumiko Yamaguchi <yamaguchi@stanford.edu>
Z1Z2 : |000i, |001i, |110i, |111i
Z2Z3 : |000i, |011i, |100i, |111i
Z1Z3 : |000i, |010i, |101i, |111i
z
at most log|G| generators
I = (Z1Z2)2 , Z1Z3 = (Z1Z2) (Z2Z3)
Determine subspaces stabilized by Z1Z2 and Z2Z3 only
12
2
3/24/2005
スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回
Example: 3-qubit bit/phase flip code
z
3-qubit bit flip code
z
z
z
z
Stabilizer S
hZ1Z2, Z2Z3i
Code subspace
{|000i, |111i}
Bit flip error detection
z
z
Symplectic notation
z Any
3-qubit phase flip code
z
z
z
Z1Z2= – 1 (if X1 or X2
error occurs)
Z2Z3= – 1 (if X2 or X3
error occurs)
Stabilizer S
hX1X2, X2X3i
Code subspace
{|+++i, |- - -i}
Phase flip error
detection
z
z
z
z
z
z Characterization
X1X2= – 1 (if Z1 or Z2
error occurs)
X2X3= – 1 (if Z2 or Z3
error occurs)
z
z
14
Example: 7-qubit (Steane) code [[7,1,3]]
z Stabilizer
Z1Z2, Z2Z3, Z4Z5, Z5Z6, Z7Z8, Z8Z9
bit flip errors
z X1X2X3X4X5X6, X4X5X6X7X8X9
Æ Detect phase flip errors
z
Æ Detect
Æ Detect
⎡ H Ham
⎢ 0
⎣
0 ⎤
H X ⎥⎦
z Code
Example: CSS code / more general
CSS code
code
z More
z
logic operations:
(α|β): 2n-dimensional space
z n–k independent generators
z 2n–(n–k)=n+k vectors commute with the
generators
z Among them, n–k vectors are generators
Æ Remaining 2k vectors
z
Parity check matrix H for C
2k-n, d]] quantum code
Stabilizer generators
subspace
16
z 2k
Æ [[n,
z
0 ⎤
H Ham ⎥⎦
Logic operations on encoded qubits
Classical code C ⊂ C⊥
z
⎡0 0 0 1 1 1 1⎤
H Ham ≡ ⎢⎢0 1 1 0 0 1 1⎥⎥
⎣⎢1 0 1 0 1 0 1⎥⎦
⎧ 1
⎫
1
⎨
∑w ,
∑w ⎬
⎩ 8 even w∈Hamming 8 odd w∈Hamming ⎭
subspace
⎧ ( 000 + 111 )( 000 + 111 )( 000 + 111 ) ( 000 − 111 )( 000 − 111 )( 000 − 111 )⎫
,
⎬
⎨
2 2
2 2
15⎭
⎩
z CSS
generators
Z4Z5Z6Z7, Z2Z3Z6Z7, Z1Z3Z5Z7
bit flip errors
z X4X5X6X7, X2X3X6X7, X1X3X5X7
Æ Detect phase flip errors
z
z Code
z
n-k generators
n total qubits
13
generators
⎡1 1 0
⎤
⎢0 1 1
⎥
⎢
⎥
⎥
⎢
1 1 0
⎥
⎢
0 1 1
⎢
⎥ = ⎡H Z
⎢
⎥ ⎢⎣ 0
1 1 0
⎢
⎥
0
1
1
⎢
⎥
⎢
1 1 1 1 1 1 0 0 0⎥
⎢
⎥
0 0 0 1 1 1 1 1 1⎥⎦
⎢⎣
of the code
(n-k)×2n matrix: H = (HZ|HX)
z
Example: 9-qubit (Shor) code [[9,1,3]]
z Stabilizer
ZM: tensor product of Z’s
XM: tensor product of Xs
(α|β)≡ Z(α)X(β) = ⊗i=1nZαi ⊗i=1nXβi
Æ
Syndrome measurement = generator measurement
element M ∈ Gn
can be expressed as a product: M = ZM· XM
(up to phase)
⎡H
⎢0
⎣
0⎤
H ⎥⎦
general CSS code
Stabilizer generators ⎡ H
Z
⎢ 0
⎣
z
0 ⎤
H X ⎥⎦
z
17
Fumiko Yamaguchi <yamaguchi@stanford.edu>
commute with stabilizer
act non-trivially on the k encoded qubits (logic
operations)
18
3
3/24/2005
スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回
Pauli operators on encoded qubits
z 2k
Examples
logic operations:
z
i
The 9-qubit (Shor) code
z
Pauli operators Z and X on encoded qubits
(i = 1, 2, L, k) Z , X
z Z operators:
z
z
i
Choose k operators Z1, Z 2 , L, Z k
such that n vectors (n–k generators + k
operators) mutually commute
z Logical state z1, z 2 , L, z k
Pauli operators
The 7-qubit (Steane) code
z
Pauli operators
z
Stabilizer generators
z
z
z
z
z
X operators:
Z = X 1 X 2 X 3 , X = Z1 Z 4 Z 7
X = X 1 X 2 X 3 , Z = Z1 Z 2 Z 3
MZ1=Z4Z5Z6Z7, MZ2=Z2Z3Z6Z7, MZ3=Z1Z3Z5Z7
MX =X4X5X6X7, MX2=X2X3X6X7, MX3=X1X3X5X7
1
Encoded states
0 = (1 + M X 1 )(1 + M X 2 )(1 + M X 3 ) 00L 0
Commute with stabilizer X 1, X 2 , L, X k
z Anti-commute with Z j
z
1 = (1 + M X 1 )(1 + M X 2 )(1 + M X 3 ) 11L1
M Zi 00 L 0 = 00 L 0 , Z 00 L 0 = 00 L 0
δ
Z i X j = ( −1) ij X j Z i
19
M Zi 11L1 = 11L1 , Z 11L1 = − 11L1
20
Circuit for encoding
|0i
|0i
|0i
|0i
|0i
|0i
|ψi
⎡1 0 0 1 0 1 1⎤
H = ⎢⎢0 1 0 1 1 0 1⎥⎥
⎢⎣0 0 1 1 1 1 0⎦⎥
H
H
H
zMX =X1X4X6X7, MX2=X2X4X5X7,
1
MX3=X3X4X5X6
a 0000000 + b 0000111
a (1 + M X 1 )(1 + M X 2 )(1 + M X 3 ) 0000000
+ b(1 + M X 1 )(1 + M X 2 )(1 + M X 3 ) 1110000
0000111 = X 1 X 2 X 3 X 4 1111111
= M X 1M X 2 M X 3 1111111
21
Fumiko Yamaguchi <yamaguchi@stanford.edu>
4
Download