|q⟩ Bad Qubits

advanced · Physics · Quantum Error-Correction Theory

Logical Operators

A logical operator is an operation on the encoded qubit: it must transform the codewords the way XX and ZZ transform a bare qubit, while leaving the codespace as a whole invariant. The stabilizer formalism pins down exactly which physical Pauli strings qualify.

The defining requirements

For a stabilizer code with group S\mathcal S encoding kk logical qubits, the logical Pauli operators Xˉi,Zˉi\bar X_i, \bar Z_i are elements of the normalizer N(S)N(\mathcal S) that are not in S\mathcal S, chosen to satisfy the qubit commutation relations:

[Xˉi,g]=0   and   [Zˉi,g]=0    gS,{Xˉi,Zˉi}=0,[Xˉi,Zˉj]=0  (ij).[\bar X_i, g] = 0 \;\text{ and }\; [\bar Z_i, g] = 0 \;\; \forall g \in \mathcal S, \qquad \{\bar X_i, \bar Z_i\} = 0, \qquad [\bar X_i, \bar Z_j] = 0 \;(i\ne j).

Two conditions, two physical meanings:

Defined only up to stabilizers

A logical operator is not unique. Multiplying Xˉ\bar X by any stabilizer gSg \in \mathcal S gives another valid representative gXˉg\bar X, since gg acts as identity on codewords. We exploit this freedom to find a low-weight representative; the minimum weight over all representatives of any nontrivial logical operator is the code distance dd.

Example: the bit-flip code

For the three-qubit bit-flip code with S=Z1Z2,Z2Z3\mathcal S = \langle Z_1Z_2, Z_2Z_3\rangle:

Zˉ=Z1  (=Z2=Z3 up to stabilizers),Xˉ=X1X2X3.\bar Z = Z_1 \;(=Z_2 = Z_3 \text{ up to stabilizers}), \qquad \bar X = X_1X_2X_3 .

Check: Zˉ=Z1\bar Z = Z_1 commutes with both ZZ-type stabilizers (all ZZ's commute) and Xˉ=X1X2X3\bar X = X_1X_2X_3 commutes with Z1Z2Z_1Z_2 and Z2Z3Z_2Z_3 because each overlap is on an even number of qubits. But Xˉ\bar X and Zˉ\bar Z overlap on qubit 1 alone, so they anticommute — exactly the qubit algebra we need.

Try it

Verify, in the symplectic formalism, that for the bit-flip code Xˉ=X1X2X3\bar X = X_1X_2X_3 and Zˉ=Z1\bar Z = Z_1 each commute with both stabilizer generators and anticommute with each other. The grader checks your computed commutation counts.

Run your code to see the quantum state.

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