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