Lean, informalized

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

Exercise 10.54 - Rows for X‾1,…,X‾k\bar X_1, \dots, \bar X_k read off the standard form and paired with the generators and the Z‾b\bar Z_b

Encoded XX operators from a check matrix in standard form.

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

A stabilizer code on nn qubits whose stabilizer has n−kn-k independent commuting generators g1,…,gn−kg_1, \dots, g_{n-k} encodes kk logical qubits. A product gg of Pauli matrices on the nn qubits is recorded, up to phase, by its row r(g)=(x∣z)r(g) = (x \mid z) in ℤ22n\mathbb{Z}_2^{2n}, with xq=1x_q = 1 when gg acts on qubit qq with XX or YY, and zq=1z_q = 1 when it acts with ZZ or YY. The rows of the generators make up the check matrix of the code.

The symplectic matrix Λ\Lambda is the 2n×2n2n \times 2n matrix over ℤ2\mathbb{Z}_2 made of n×nn \times n blocks, zero on the diagonal and the identity off it, Λ=[0II0],\Lambda = \begin{bmatrix} 0 & I \\ I & 0 \end{bmatrix},(1)✦ so that it exchanges the two halves of a row. The twisted inner product of rows s=(x∣z)s = (x \mid z) and t=(x′∣z′)t = (x' \mid z') is the element of ℤ2\mathbb{Z}_2 sΛtT=s⋅(ΛtT)=x⋅z′+z⋅x′.s \Lambda t^T = s \cdot (\Lambda t^T) = x \cdot z' + z \cdot x'.(2)✦ Two Pauli products gg and g′g' commute when r(g)Λr(g′)T=0r(g) \Lambda r(g')^T = 0 and anticommute when it is 11.

The exercise starts from a check matrix in standard form, made of blocks given below, and from encoded operators Z‾1,…,Z‾k\bar Z_1, \dots, \bar Z_k and X‾1,…,X‾k\bar X_1, \dots, \bar X_k for the logical qubits, read off those blocks. It asks for four properties of the X‾a\bar X_a: each commutes with every generator, so it maps the code space to itself✦; they commute with one another✦; X‾a\bar X_a anticommutes with Z‾a\bar Z_a and commutes with Z‾b\bar Z_b for b≠ab \neq a✦; and the generators together with X‾1,…,X‾k\bar X_1, \dots, \bar X_k are independent.✦

The Check Matrix in Standard Form

The columns of each half of the check matrix are the qubits, which fall into three groups, the first rr, the next mm and the last kk: Q={1,…,r}⊔{1,…,m}⊔{1,…,k},n=r+m+k.Q = \{1, \dots, r\} \sqcup \{1, \dots, m\} \sqcup \{1, \dots, k\}, \qquad n = r + m + k.(3)✦ For blocks u∈ℤ2ru \in \mathbb{Z}_2^r, v∈ℤ2mv \in \mathbb{Z}_2^m and w∈ℤ2kw \in \mathbb{Z}_2^k, the vector [uvw][\,u \;\; v \;\; w\,] on QQ assembled from them is [uvw]q={uq,q among the first r,vq,q among the next m,wq,q among the last k.[\,u \;\; v \;\; w\,]_q = \begin{cases} u_q, & q \text{ among the first } r,\\ v_q, & q \text{ among the next } m,\\ w_q, & q \text{ among the last } k. \end{cases}(4)✦

Standard form data SS of sizes rr, mm, kk is a choice of six matrices over ℤ2\mathbb{Z}_2, A1∈ℤ2r×m,A2∈ℤ2r×k,B∈ℤ2r×r,C∈ℤ2r×k,D∈ℤ2m×r,E∈ℤ2m×k.\begin{gathered} A_1 \in \mathbb{Z}_2^{r \times m}, \qquad A_2 \in \mathbb{Z}_2^{r \times k}, \qquad B \in \mathbb{Z}_2^{r \times r},\\ C \in \mathbb{Z}_2^{r \times k}, \qquad D \in \mathbb{Z}_2^{m \times r}, \qquad E \in \mathbb{Z}_2^{m \times k}. \end{gathered}(5)✦

Write eie_i for the iith unit vector and MiM_i for row ii of a matrix MM; the bar in a row [⋅∣⋅][\,\cdot \mid \cdot\,] separates the XX half from the ZZ half, each assembled from three blocks as in (4). The pivot generator gig_i of SS, for 1≤i≤r1 \le i \le r, has the row r(gi)=[ei(A1)i(A2)i∣Bi0Ci],r(g_i) = [\,e_i \;\; (A_1)_i \;\; (A_2)_i \mid B_i \;\; 0 \;\; C_i\,],(6)✦ and the middle generator gr+jg_{r+j}, for 1≤j≤m1 \le j \le m, has the row r(gr+j)=[000∣DjejEj].r(g_{r+j}) = [\,0 \;\; 0 \;\; 0 \mid D_j \;\; e_j \;\; E_j\,].(7)✦ The generators g1,…,gn−kg_1, \dots, g_{n-k} of SS, with n−k=r+mn - k = r + m, are the pivot generators followed by the middle ones; their rows form the check matrix in standard form, G=[IA1A2B0C000DIE].G = \left[\begin{array}{ccc|ccc} I & A_1 & A_2 & B & 0 & C\\ 0 & 0 & 0 & D & I & E \end{array}\right].(8)✦

The Encoded Operators

The encoded operator Z‾b\bar Z_b of SS, for 1≤b≤k1 \le b \le k, has the row r(Z‾b)=[000∣(A2T)b0eb],r(\bar Z_b) = [\,0 \;\; 0 \;\; 0 \mid (A_2^T)_b \;\; 0 \;\; e_b\,],(9)✦ where (MT)b(M^T)_b, row bb of the transpose, is column bb of MM. The encoded operator X‾a\bar X_a of SS, for 1≤a≤k1 \le a \le k, has the row r(X‾a)=[0(ET)aea∣(CT)a00].r(\bar X_a) = [\,0 \;\; (E^T)_a \;\; e_a \mid (C^T)_a \;\; 0 \;\; 0\,].(10)✦

The Claim

Theorem 1. Let SS be standard form data of sizes rr, mm, kk, with generators g1,…,gn−kg_1, \dots, g_{n-k} and encoded operators X‾a\bar X_a and Z‾b\bar Z_b. Then for all aa, a′a', bb in {1,…,k}\{1, \dots, k\} and 1≤ℓ≤n−k1 \le \ell \le n-k, r(X‾a)Λr(gℓ)T=0,r(\bar X_a)\, \Lambda\, r(g_\ell)^T = 0,(11)✦ r(X‾a)Λr(X‾a′)T=0,r(\bar X_a)\, \Lambda\, r(\bar X_{a'})^T = 0,(12)✦ r(X‾a)Λr(Z‾b)T=δab,r(\bar X_a)\, \Lambda\, r(\bar Z_b)^T = \delta_{ab},(13)✦ with δab\delta_{ab} the entries of the k×kk \times k identity matrix over ℤ2\mathbb{Z}_2, and the rows of g1,…,gn−kg_1, \dots, g_{n-k} and of X‾1,…,X‾k\bar X_1, \dots, \bar X_k are linearly independent over ℤ2\mathbb{Z}_2: for coefficients λℓ\lambda_\ell and μc\mu_c in ℤ2\mathbb{Z}_2, ∑ℓ=1n−kλℓr(gℓ)+∑c=1kμcr(X‾c)=0only if every λℓ and every μc is 0.\sum_{\ell=1}^{n-k} \lambda_\ell\, r(g_\ell) + \sum_{c=1}^{k} \mu_c\, r(\bar X_c) = 0 \quad \text{only if every } \lambda_\ell \text{ and every } \mu_c \text{ is } 0.(14)✦

What Is Checked

The claim is stated over the rows that standard form data determine: the generator rows of the check matrix (8) and the rows (10) and (9) of the encoded operators, paired by the twisted inner product (2). The library proves (11), (12), (13) and (14) for every choice of the six blocks (5).