|q⟩ Bad Qubits

advanced · Physics · Stabilizer Formalism & CSS Codes

The Pauli Group

The stabilizer formalism is the language in which most of quantum error correction is written. Before we can describe codes, states, and logical operators with it, we need its alphabet: the Pauli group. Everything in this module is built from this one finite group.

The single-qubit Pauli matrices

Recall the four single-qubit Pauli operators,

I=(1001),X=(0110),Y=(0ii0),Z=(1001).I = \begin{pmatrix} 1 & 0 \\ 0 & 1 \end{pmatrix}, \quad X = \begin{pmatrix} 0 & 1 \\ 1 & 0 \end{pmatrix}, \quad Y = \begin{pmatrix} 0 & -i \\ i & 0 \end{pmatrix}, \quad Z = \begin{pmatrix} 1 & 0 \\ 0 & -1 \end{pmatrix}.

These four matrices are almost closed under multiplication, but not quite. For example XY=iZXY = iZ, YX=iZYX = -iZ, and X2=IX^2 = I. Products keep generating the phases ±1\pm 1 and ±i\pm i. To obtain a genuine group we must adjoin those phases.

The one-qubit Pauli group

Define

P1={αP:α{±1,±i}, P{I,X,Y,Z}}.\mathcal{P}_1 = \{\, \alpha\,P : \alpha \in \{\pm 1, \pm i\},\ P \in \{I, X, Y, Z\} \,\}.

This set has 4×4=164 \times 4 = 16 elements and is closed under matrix multiplication, so it is a group under the usual operator product. The key structural relations are

X2=Y2=Z2=I,XY=iZ,YZ=iX,ZX=iY,X^2 = Y^2 = Z^2 = I, \qquad XY = iZ,\quad YZ = iX,\quad ZX = iY,

with the reversed products picking up the opposite sign, e.g. YX=iZYX = -iZ. Two single-qubit Paulis therefore either commute or anticommute: XX and ZZ anticommute (XZ=ZXXZ = -ZX), while any Pauli commutes with itself and with II.

The n-qubit Pauli group

The nn-qubit Pauli group Pn\mathcal{P}_n consists of all tensor products of single-qubit Paulis, together with an overall phase:

Pn={αP1P2Pn:α{±1,±i}, Pj{I,X,Y,Z}}.\mathcal{P}_n = \{\, \alpha\, P_1 \otimes P_2 \otimes \cdots \otimes P_n : \alpha \in \{\pm 1, \pm i\},\ P_j \in \{I, X, Y, Z\} \,\}.

Counting elements: there are 4n4^n choices of the tensor-product string and 44 choices of phase, so

Pn=44n=22n+2.|\mathcal{P}_n| = 4 \cdot 4^n = 2^{2n+2}.

We routinely abbreviate a tensor product by listing only the non-identity factors with their positions; for instance on three qubits X1Z3X_1 Z_3 means XIZX \otimes I \otimes Z.

Weight, Hermiticity, and order

A few properties recur throughout the module:

Commutation is the whole story

Two Pauli strings P=P1PnP = P_1 \otimes \cdots \otimes P_n and Q=Q1QnQ = Q_1 \otimes \cdots \otimes Q_n either commute or anticommute. They anticommute precisely when the number of positions jj at which PjP_j and QjQ_j are different non-identity Paulis (and therefore anticommute locally) is odd:

PQ=(1)cQP,c=#{j:PjQj=QjPj}.PQ = (-1)^{c}\, QP, \qquad c = \#\{\, j : P_j Q_j = -Q_j P_j \,\}.

This single ±\pm relationship is the engine of everything that follows. In the next lessons we will pick commuting subgroups of Pn\mathcal{P}_n — the stabilizer groups — and use them to define quantum states and quantum codes. Because commutation reduces to counting positions mod 2, the entire theory can be carried out with binary linear algebra over F2\mathbb{F}_2, which is why stabilizer circuits are classically tractable.

The takeaway

The Pauli group Pn\mathcal{P}_n is a finite group of 22n+22^{2n+2} operators, generated by tensor products of I,X,Y,ZI, X, Y, Z plus phases {±1,±i}\{\pm 1, \pm i\}. Its elements square (up to phase) to the identity, have eigenvalues ±1\pm 1, and pairwise commute or anticommute according to a simple parity rule. This rigid, finite structure is the foundation on which stabilizer states and codes are built.

Sign in on the full site to ask questions and join the discussion.