Lean, informalized

Nielsen & Chuang · Chapter 10, Quantum error-correction · p. 468

Exercise 10.47 - Each of the eight generators of the nine qubit code has both codewords as eigenstates with eigenvalue one

Eight generators that fix both Shor codewords.

Hover over a blue or green term in the text, or a node in the graph, to find it in the other. Select it to read its declaration both in Lean and in words.

The Exercise

Shor’s code stores one qubit in nine, grouped into three blocks of three: qubits 11 to 33, 44 to 66 and 77 to 99. Each of its two codewords |0L⟩|0_L\rangle and |1L⟩|1_L\rangle puts every block in a cat state, |000⟩+|111⟩|000\rangle + |111\rangle for |0L⟩|0_L\rangle and |000⟩−|111⟩|000\rangle - |111\rangle for |1L⟩|1_L\rangle. Eight operators on the nine qubits go with the code: six products ZiZjZ_i Z_j of Pauli ZZ on two neighbouring qubits of one block, and two products of Pauli XX on all six qubits of two neighbouring blocks, X1⋯X6X_1 \cdots X_6 and X4⋯X9X_4 \cdots X_9. The exercise is to show that each of the eight leaves both codewords unchanged.

A Quantum System

A quantum system SS is a physical system described by its state space, a finite dimensional complex Hilbert space.✦ Every finite dimensional complex Hilbert space HH is the state space of a quantum system; the qubit QQ, the two level system, is the one whose state space is ℂ2\mathbb{C}^2. The composite system S⊗TS \otimes T of two systems SS and TT is the system whose state space is the tensor product of their state spaces.✦

A pure state ψ\psi of SS is a vector |ψ⟩|\psi\rangle of unit norm in the state space of SS, determined physically up to a global phase.✦ A nonzero vector |v⟩|v\rangle in that space gives the normalized pure state |v⟩/‖v‖|v\rangle / \lVert v \rVert.✦ For pure states ψ\psi of SS and φ\varphi of TT, the product ψ⊗φ\psi \otimes \varphi is the pure state of S⊗TS \otimes T with vector |ψ⟩⊗|φ⟩|\psi\rangle \otimes |\varphi\rangle.✦

The basis states |0⟩|0\rangle and |1⟩|1\rangle of the qubit are the pure states whose vectors are the standard basis vectors e0e_0 and e1e_1 of ℂ2\mathbb{C}^2.✦ The three qubit register R=Q⊗Q⊗QR = Q \otimes Q \otimes Q is the composite of three qubits.✦ Its basis state |q1q2q3⟩|q_1 q_2 q_3\rangle, for bits q1q_1, q2q_2 and q3q_3, is the product |q1q2q3⟩=|q1⟩⊗|q2⟩⊗|q3⟩.|q_1 q_2 q_3\rangle = |q_1\rangle \otimes |q_2\rangle \otimes |q_3\rangle .(1) The nine qubit Shor register is the composite R⊗R⊗RR \otimes R \otimes R of three copies of RR, one for each block of the code.✦

Observables and Eigenstates

An observable AA on SS is a self adjoint operator on the state space of SS, A†=AA^\dagger = A; its real spectrum is the set of possible measured values.✦ A pure state ψ\psi of SS is an eigenstate of AA with eigenvalue μ\mu, a real number, when A|ψ⟩=μ|ψ⟩.A|\psi\rangle = \mu|\psi\rangle .(2)✦ The identity observable II on SS is the observable whose operator is the identity.✦ For an observable AA on SS and an observable BB on TT, the tensor product A⊗BA \otimes B is the observable on S⊗TS \otimes T whose operator is the tensor product of the two operators; it measures AA on the first factor and BB on the second.✦

On the qubit, observables are built from the Pauli matrices, complex 2×22 \times 2 matrices with rows and columns indexed by 00 and 11: X=(0110),Y=(0−ii0),Z=(100−1).X = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \qquad Y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \qquad Z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix}.(3) The Pauli vector is σ→=(X,Y,Z)\vec{\sigma} = (X, Y, Z). For a real vector n→=(nx,ny,nz)\vec{n} = (n_x, n_y, n_z) the matrix n→⋅σ→\vec{n} \cdot \vec{\sigma} is nxX+nyY+nzZn_x X + n_y Y + n_z Z✦, and the Pauli observable n→⋅σ→\vec{n} \cdot \vec{\sigma} is the observable on the qubit with this matrix as its operator on ℂ2\mathbb{C}^2.✦ The observables XX and ZZ are the Pauli observables for nˆ=(1,0,0)\hat{n} = (1, 0, 0) and nˆ=(0,0,1)\hat{n} = (0, 0, 1).

On the three qubit register, the observables Z1Z2Z_1 Z_2 and Z2Z3Z_2 Z_3, which compare neighbouring qubits and detect a bit flip, and the observable X1X2X3X_1 X_2 X_3 that flips all three qubits are the tensor products Z1Z2=Z⊗Z⊗I,Z2Z3=I⊗Z⊗Z,X⊗X⊗X,Z_1 Z_2 = Z \otimes Z \otimes I, \qquad Z_2 Z_3 = I \otimes Z \otimes Z, \qquad X \otimes X \otimes X,(4) with II the identity observable on one qubit. Z1Z2Z_1 Z_2 compares the first qubit with the second, and Z2Z3Z_2 Z_3 the second with the third.

The Shor Codewords

For a bit σ\sigma, the block cat vector |000⟩+(−1)σ|111⟩|000\rangle + (-1)^\sigma |111\rangle is a vector in the state space of the three qubit register, built from the basis states (1) whose bits are all 00 and all 11.✦ The block cat state |cσ⟩|c_\sigma\rangle of the three qubit register RR is the block cat vector divided by its norm: |cσ⟩=12(|000⟩+(−1)σ|111⟩).|c_\sigma\rangle = \frac{1}{\sqrt{2}} \bigl( |000\rangle + (-1)^\sigma |111\rangle \bigr).(5) For bits σ1\sigma_1, σ2\sigma_2 and σ3\sigma_3, the product of three cat states is the pure state |cσ1⟩⊗|cσ2⟩⊗|cσ3⟩|c_{\sigma_1}\rangle \otimes |c_{\sigma_2}\rangle \otimes |c_{\sigma_3}\rangle of the Shor register, one cat state per block.✦ The Shor codeword |sL⟩|s_L\rangle, for a bit ss, is the product with the same sign in all three blocks: |sL⟩=|cs⟩⊗|cs⟩⊗|cs⟩=122(|000⟩+(−1)s|111⟩)⊗3.|s_L\rangle = |c_s\rangle \otimes |c_s\rangle \otimes |c_s\rangle = \frac{1}{2\sqrt{2}} \bigl( |000\rangle + (-1)^s |111\rangle \bigr)^{\otimes 3}.(6)✦

The Eight Generators

The eight generators g1,…,g8g_1, \dots, g_8 of the code are observables on the Shor register, each the tensor product of one observable per block, an II outside the brackets being the identity observable on a whole block: g1=Z1Z2=(Z⊗Z⊗I)⊗I⊗I,g2=Z2Z3=(I⊗Z⊗Z)⊗I⊗I,g3=Z4Z5=I⊗(Z⊗Z⊗I)⊗I,g4=Z5Z6=I⊗(I⊗Z⊗Z)⊗I,g5=Z7Z8=I⊗I⊗(Z⊗Z⊗I),g6=Z8Z9=I⊗I⊗(I⊗Z⊗Z),g7=X1⋯X6=(X⊗X⊗X)⊗(X⊗X⊗X)⊗I,g8=X4⋯X9=I⊗(X⊗X⊗X)⊗(X⊗X⊗X).\begin{aligned} g_1 &= Z_1 Z_2 = (Z \otimes Z \otimes I) \otimes I \otimes I, \\ g_2 &= Z_2 Z_3 = (I \otimes Z \otimes Z) \otimes I \otimes I, \\ g_3 &= Z_4 Z_5 = I \otimes (Z \otimes Z \otimes I) \otimes I, \\ g_4 &= Z_5 Z_6 = I \otimes (I \otimes Z \otimes Z) \otimes I, \\ g_5 &= Z_7 Z_8 = I \otimes I \otimes (Z \otimes Z \otimes I), \\ g_6 &= Z_8 Z_9 = I \otimes I \otimes (I \otimes Z \otimes Z), \\ g_7 &= X_1 \cdots X_6 = (X \otimes X \otimes X) \otimes (X \otimes X \otimes X) \otimes I, \\ g_8 &= X_4 \cdots X_9 = I \otimes (X \otimes X \otimes X) \otimes (X \otimes X \otimes X). \end{aligned}(7)✦

The Claim

Theorem 1. For each bit ss and each of the eight generators gkg_k of (7), the Shor codeword |sL⟩|s_L\rangle of (6) is an eigenstate of gkg_k with eigenvalue 11: gk|sL⟩=|sL⟩.g_k |s_L\rangle = |s_L\rangle .(8)✦

What Is Checked

The claim is stated over the two Shor codewords (6), products of three normalized block cat states, and the eight generators (7), tensor products of the observables XX, ZZ and II, with eigenstate taken in the sense of (2).

About these constructions the library proves that the block cat vector |000⟩+(−1)σ|111⟩|000\rangle + (-1)^\sigma |111\rangle is nonzero for both values of σ\sigma✦, so that it can be normalized, and that the product of two pure states is again of unit norm, the norm of a product vector being the product of the norms. It proves as well that the matrix n→⋅σ→\vec{n} \cdot \vec{\sigma} is Hermitian, so that every Pauli observable is self adjoint, and that a tensor product of observables is self adjoint, as a tensor product of Hermitian operators. The identity observable II is self adjoint as well, the identity being its own adjoint.