Lean, informalized

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

Exercise 10.33 - Commutation of Pauli strings on nn qubits read off one bit computed from their check matrix rows

Two Pauli strings commute exactly when their twisted product vanishes.

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 Pauli string gg on nn qubits acts on each qubit with one of the matrices II, XX, YY, ZZ. In the stabilizer formalism it is recorded as a row r(g)r(g) of the check matrix: 2n2n bits, the first nn marking the qubits on which gg has an XX factor, the last nn those on which it has a ZZ factor.✦ The exercise asks to show that two Pauli strings gg and hh commute as operators if and only if r(g)Λr(h)T=0r(g) \Lambda r(h)^T = 0, with arithmetic modulo two and Λ\Lambda the 2n×2n2n \times 2n matrix that exchanges the two halves of a row.✦

Pauli Strings

The Pauli matrices are the four complex 2×22 \times 2 matrices σ0=I=(1001),σ1=X=(0110),σ2=Y=(0−ii0),σ3=Z=(100−1).\sigma_0 = I = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}, \quad \sigma_1 = X = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \quad \sigma_2 = Y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \quad \sigma_3 = Z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix}.(1)✦

A Pauli string gg on nn qubits is a choice of one index gk∈{0,1,2,3}g_k \in \{0, 1, 2, 3\} for each qubit kk. The operator PgP_g of a Pauli string gg on nn qubits is the tensor product of the chosen matrices, an operator on the 2n2^n dimensional state space of the qubits; in the computational basis, with rows and columns labelled by bit strings ii and jj, each matrix element is a product over the qubits: Pg=σg1⊗⋯⊗σgn,(Pg)ij=∏k=1n(σgk)ikjk.P_g = \sigma_{g_1} \otimes \cdots \otimes \sigma_{g_n}, \qquad (P_g)_{ij} = \prod_{k=1}^{n} (\sigma_{g_k})_{i_k j_k}.(2)✦

The Check Matrix

The check bits of a single qubit Pauli matrix σ∈{I,X,Y,Z}\sigma \in \{I, X, Y, Z\} are the pair of elements of ℤ2\mathbb{Z}_2 consisting of its XX bit and its ZZ bit, assigned as follows: I↦(0,0),X↦(1,0),Y↦(1,1),Z↦(0,1).I \mapsto (0, 0), \qquad X \mapsto (1, 0), \qquad Y \mapsto (1, 1), \qquad Z \mapsto (0, 1).(3)✦

The XX part xgx_g and the ZZ part zgz_g of a Pauli string gg are the vectors in ℤ2n\mathbb{Z}_2^n whose entries on qubit kk are the XX bit and the ZZ bit of σgk\sigma_{g_k}.✦ The check matrix row r(g)r(g) of gg is the vector of 2n2n bits made of the two parts, the XX part first: r(g)=(xg|zg)=(xg,1,…,xg,n,zg,1,…,zg,n).r(g) = (x_g \,|\, z_g) = (x_{g,1}, \ldots, x_{g,n}, z_{g,1}, \ldots, z_{g,n}).(4)✦

The symplectic matrix Λ\Lambda over ℤ2\mathbb{Z}_2 exchanges the two halves of a vector of 2n2n bits, with InI_n the identity on one half: Λ=(0InIn0).\Lambda = \begin{pmatrix} 0 & I_n \\ I_n & 0 \end{pmatrix}.(5)✦

The twisted inner product uΛvTu \Lambda v^T of two vectors u=(uX|uZ)u = (u_X \,|\, u_Z) and v=(vX|vZ)v = (v_X \,|\, v_Z) in ℤ22n\mathbb{Z}_2^{2n} is the element of ℤ2\mathbb{Z}_2 obtained as the dot product of uu with ΛvT\Lambda v^T: uΛvT=uX⋅vZ+uZ⋅vX=∑k=1n(uX,kvZ,k+uZ,kvX,k).u \Lambda v^T = u_X \cdot v_Z + u_Z \cdot v_X = \sum_{k=1}^{n} \bigl( u_{X,k}\, v_{Z,k} + u_{Z,k}\, v_{X,k} \bigr).(6)✦

The Claim

Theorem 1. For any two Pauli strings gg and hh on nn qubits, PgPh=PhPg⇔r(g)Λr(h)T=0.P_g P_h = P_h P_g \iff r(g)\, \Lambda\, r(h)^T = 0.(7)✦

What Is Checked

The claim is stated over the operators PgP_g of Pauli strings (2), built from the four matrices (1), and over the check matrix rows (4), read from the check bits (3) and paired by the twisted inner product (6) with the symplectic matrix (5).