<<

スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回 3/24/2005

What is the stabilizer formalism?

z Represent a by the Stabilizer codes operators stabilizing it. z Example: EPR state z State (ordinary) representation 00 + 11 ψ = 2

z Stabilizer: X1X2 and Z1Z2

X1 X 2 ψ = ψ , Z1Z2 ψ = ψ

z Uniquely determined.

2

Pauli on n Gn Properties of Pauli group Gn

E = e I + e X + e Z + e XZ z Single error 0 1 2 3 1. Each M ∈ Gn is unitary Æ Useful to express errors in terms of Pauli M-1 = M† 2. For each M ∈ G , M2 = ± I ≡ ± I⊗n z Pauli group n z on one qubit 3. M is Hermitian or anti-Hermitian 2 † z G1 = {±I, ±iI, ±X, ±iX, ±Y, ±iY, ±Z, ±iZ} z If M = I, then M is Hermitian (M = M ) z XY = iZ, YX = -iZ z If M2 = – I, then M is anti-Hermitian z X (iX) = iI † z on two qubits (M = –M ) z G = {±II, ±iII, ±IX, ±iIX, ±XI, ±iXI, } 2 L 4. Any two elements M, N ∈ Gn either z on n qubits commute or anti-commute: MN = ± NM z Gn 3 4

Definition of stabilizers Properties of stabilizers

z Stabilizer S of the code: z If –I ∈ S, VS = {|0i} z Example: |ψi ∈ VS iff M|ψi = |ψi for all M ∈ S z S = {±I, ±X} (Subgroup of G ) z S: subset of G (Pauli group on n qubits) 1 (−I)ψ = ψ ⇒ ψ = 0 n z Vector stabilized by (-I) z VS stabilized by S z If [M1, M2]≠ 0 (M1, M2 ∈ S) , VS = {|0i} ═ simultaneous eigenspace with eigenvalue +1 of z Example: all elements of S z {X, Y, }: Subgroup of G L 1 (XY − YX )ψ = ψ ⇒ ψ = 0 z Example: EPR state z Vector stabilized by X and Y ≠ 0

z S = {X1X2, Z2Z2} (Subset of G2 ) Æ Stabilizer S for non-trivial vector space 00 + 11 z VS = { } 2 z –I ∉ S z All elements commute 5 6

Fumiko Yamaguchi 1 スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回 3/24/2005

Properties of stabilizers II Number of encoded qubits

z Number of encoded qubits z M ∈ S must satisfy M2 = I 2 z Use n qubits (n ≥ k) z If M = –I, M cannot have the eigenvalue +1 z For each M ≠±I in Gn, the eigenvalues +1 and z Generators of stabilizer {Mi} (i = 1,L, n-k) –1 have equal degeneracy z Those elements are independent (no one can be expressed as a product of others) z For each M ≠±I, there is an N ∈ Gn that anti- commutes with M; MN = –NM z Each element can be expressed as a product of z M|ψi = |ψi [Eigenvalue +1] elements of {Mi}. z M(N|ψi) = –N|ψi [Eigenvalue –1] k Æ n n-1 Code subspace Vs has dimension 2 z ½(2) = 2 mutually orthogonal states satisfy M|ψi = |ψi ≡ Encode k qubits z For {Mi} (i = 1,L, n-k) z (½)n-k (2n) = 2k mutually orthogonal states satisfy

Mi|ψi = |ψi 7 8

Detection and correction of errors in Condition for error recovery in stabilizer stabilizer formalism formalism

z Stabilizer generators {Mi} (i = 1,L, n-k) as z Condition for error recovery check operators † hi|Ea Eb|ji = Cabδi,j (∗) z Collective measurement of the generators z Ea, Eb ∈ ΕΞ z No error: Mj = 1 for each generator

z Error: Mj = –1 for some j z |ii,|ji : encoded states (normalized) Æ Detect and correct the error z Cab: independent of |ii,|ji z Error syndrome z Condition (∗) is satisfied when z Error Ea ∈ Pauli group either commutes or † 1. Ea Eb ∈ S; or anti-commutes with Mj

z Ea commutes with Mj : 2. There is an M ∈ S that anti-commutes with ME |ψi = E M |ψi = E |ψi † j a a j a Ea Eb z Ea anti-commutes with Mj :

MjEa|ψi = – EaMj|ψi = – Ea|ψi 9 10

Error correcting code in stabilizer When error correction fails formalism

† z Code subspace = Vector space V stabilized z If Ea Eb ∉ S commutes with stabilizer S by S z preserves the code subspace z Example: 3-qubit bit flip code z acts as logic operations on the encoded qubits z S = {I, Z1Z2, Z2Z3, Z1Z3} z Subspaces stabilized by z A stabilizer code with distance d z Z1Z2 : |000i, |001i, |110i, |111i z Z Z : |000 , |011 , |100 , |111 z Each error E ∈ Gn of weight < d 2 3 i i i i z Z Z : |000i, |010i, |101i, |111i z lies in the stabilizer; or 1 3 Æ V = {|000i, |111i} = Code subspace z anti-commutes with some generators of the S stabilizer z S = hZ1Z2, Z2Z3i: using generators z at most log|G| generators 2 z I = (Z1Z2) , Z1Z3 = (Z1Z2) (Z2Z3)

z Determine subspaces stabilized by Z1Z2 and Z2Z3 only 11 12

Fumiko Yamaguchi 2 スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回 3/24/2005

Example: 3-qubit bit/phase flip code Symplectic notation

z 3-qubit bit flip code z 3-qubit phase flip code z Any element M ∈ Gn z Stabilizer S z Stabilizer S z can be expressed as a product: M = ZM· XM hZ1Z2, Z2Z3i hX1X2, X2X3i (up to phase)

z Code subspace z Code subspace z ZM: of Z’s

{|000i, |111i} {|+++i, |- - -i} z XM: tensor product of Xs n αi n βi z Bit flip error detection z Phase flip error Æ (α|β)≡ Z(α)X(β) = ⊗i=1 Z ⊗i=1 X z Z Z = – 1 (if X or X detection 1 2 1 2 z Characterization of the code error occurs) z X1X2= – 1 (if Z1 or Z2 z (n-k) 2n matrix: H = (H |H ) z Z2Z3= – 1 (if X2 or X3 error occurs) × Z X error occurs) z X2X3= – 1 (if Z2 or Z3 z n-k generators error occurs) z n total qubits Syndrome measurement = generator measurement 13 14

Example: 9-qubit (Shor) code [[9,1,3]] Example: 7-qubit (Steane) code [[7,1,3]]

z Stabilizer generators z Stabilizer generators ⎡0 0 0 1 1 1 1⎤ H ≡ ⎢0 1 1 0 0 1 1⎥ Ham ⎢ ⎥ ⎢1 0 1 0 1 0 1⎥ z Z1Z2, Z2Z3, Z4Z5, Z5Z6, Z7Z8, Z8Z9 z Z4Z5Z6Z7, Z2Z3Z6Z7, Z1Z3Z5Z7 ⎣ ⎦ Æ Detect bit flip errors Æ Detect bit flip errors

z X1X2X3X4X5X6, X4X5X6X7X8X9 z X4X5X6X7, X2X3X6X7, X1X3X5X7 Æ Detect phase flip errors Æ Detect phase flip errors ⎡1 1 0 ⎤ ⎢0 1 1 ⎥ ⎢ ⎥ ⎡HHam 0 ⎤ ⎢ 1 1 0 ⎥ ⎢ ⎥ ⎢ ⎥ 0 1 1 ⎡H 0 ⎤ 0 H ⎢ ⎥ = Z ⎣ Ham ⎦ ⎢ ⎥ ⎢ ⎥ 1 1 0 ⎣ 0 H X ⎦ ⎢ ⎥ ⎢ 0 1 1 ⎥ z ⎢ 1 1 1 1 1 1 0 0 0⎥ Code subspace ⎢ ⎥ ⎣⎢ 0 0 0 1 1 1 1 1 1⎦⎥ ⎧ 1 1 ⎫ z Code subspace ⎨ ∑ w , ∑ w ⎬ ⎩ 8 even w∈Hamming 8 odd w∈Hamming⎭ ⎧()000 + 111 ()000 + 111 ()000 + 111 ()000 − 111 ()000 − 111 ( 000 − 111 )⎫ ⎨ , ⎬ ⎩ 2 2 2 2 15⎭ 16

Example: CSS code / more general Logic operations on encoded qubits CSS code z CSS code z 2k logic operations: z Classical code C ⊂ C⊥ z (α|β): 2n-dimensional space z Parity check matrix H for C z n–k independent generators Æ [[n, 2k-n, d]] quantum code z 2n–(n–k)=n+k vectors commute with the z Stabilizer generators ⎡H 0 ⎤ generators ⎢ ⎥ ⎣ 0 H ⎦ z Among them, n–k vectors are generators z More general CSS code Æ Remaining 2k vectors z Stabilizer generators z commute with stabilizer ⎡H Z 0 ⎤ z act non-trivially on the k encoded qubits (logic ⎢ 0 H ⎥ ⎣ X ⎦ operations)

17 18

Fumiko Yamaguchi 3 スピントロニクス量子操作研究会「量子コンピュータの基礎」 第4回 3/24/2005

Pauli operators on encoded qubits Examples

z 2k logic operations: z The 9-qubit (Shor) code z Pauli operators z Pauli operators Z and X on encoded qubits Z = X1 X 2 X 3, X = Z1Z4Z7 (i = 1, 2, , k) Z , X L i i z The 7-qubit (Steane) code z Z operators: z Pauli operators X = X X X , Z = Z Z Z z Choose k operators 1 2 3 1 2 3 Z1, Z2, L, Zk such that n vectors (n–k generators + k z Stabilizer generators z M =Z Z Z Z , M =Z Z Z Z , M =Z Z Z Z operators) mutually commute Z1 4 5 6 7 Z2 2 3 6 7 Z3 1 3 5 7 z MX =X4X5X6X7, MX2=X2X3X6X7, MX3=X1X3X5X7 z Logical state z , z , , z 1 1 2 L k z Encoded states z X operators: 0 = (1+ M X1 )(1+ M X 2 )(1+ M X 3 ) 00L0 z Commute with stabilizer X1, X 2, L, X k 1 = ()()()1+ M X1 1+ M X 2 1+ M X 3 11L1 z Anti-commute with Z j

δ ij M Zi 00L0 = 00L0 , Z 00L0 = 00L0 Zi X j = (−1) X j Zi 19 M Zi 11L1 = 11L1 , Z 11L1 = − 11L1 20

Circuit for encoding

⎡1 0 0 1 0 1 1⎤ |0i H ⎢ ⎥ H = ⎢0 1 0 1 1 0 1⎥ |0i H ⎣⎢0 0 1 1 1 1 0⎦⎥ |0i H

zM =X X X X , M =X X X X , |0i X1 1 4 6 7 X2 2 4 5 7 MX3=X3X4X5X6 |0i |0i |ψi

a()()()1+ M X1 1+ M X 2 1+ M X 3 0000000 a 0000000 + b 0000111 + b()()()1+ M X1 1+ M X 2 1+ M X 3 1110000

0000111 = X1X 2 X 3 X 4 1111111

= M X1M X 2M X 3 1111111 21

Fumiko Yamaguchi 4