|q⟩ Bad Qubits

advanced · Programming · Fault-Tolerant Gate Synthesis

Transversal Gates

A transversal gate is the cleanest fault-tolerant construction: a logical operation built as a tensor product of single-qubit physical gates, one per qubit of the code block (or one per corresponding pair of qubits across two blocks). Because every physical gate touches only one qubit of any given block, a single faulty gate can corrupt at most one qubit of that block — exactly the propagation property fault tolerance demands.

Definition

Let a code use nn physical qubits per logical qubit. A single-block logical gate Uˉ\bar{U} is transversal if it can be implemented as

Uˉ=u0u1un1,\bar{U} = u_0 \otimes u_1 \otimes \cdots \otimes u_{n-1},

where each uku_k acts on physical qubit kk alone. A two-block gate (such as a logical CNOT) is transversal if it is a tensor product of two-qubit gates, the kk-th one coupling qubit kk of block A to qubit kk of block B — never two qubits of the same block.

Contrast this with a non-transversal gate that, say, applies a Toffoli among three qubits of the same block. One faulty Toffoli could place errors on two qubits of that block at once, overwhelming a distance-3 code.

Transversal gates of the 3-qubit bit-flip code

The 3-qubit repetition (bit-flip) code encodes

0L=000,1L=111.|0_L\rangle = |000\rangle, \qquad |1_L\rangle = |111\rangle .

Two of its logical gates are transversal:

You can check that Zˉ\bar{Z} also equals ZZ on any single qubit (since ZZZZ \otimes Z \otimes Z and ZIIZ \otimes I \otimes I agree on the code space), but the symmetric three-qubit form is the transversal one and is what fault tolerance prescribes.

The Eastin–Knill obstruction

Why not just make every gate transversal and be done? The Eastin–Knill theorem proves that no quantum code with the ability to detect arbitrary single-qubit errors admits a universal set of transversal logical gates. Some gate in any universal set must be implemented by a non-transversal (and more expensive) construction. This is the deep reason the rest of the module exists: the Clifford gates are often transversal, but the TT gate that completes a universal set is not, and must be supplied by magic-state injection.

Try it

The starter code prepares the logical +L=(000+111)/2|+_L\rangle = (|000\rangle + |111\rangle)/\sqrt{2}. Apply the transversal logical ZZ (a ZZ on each of the three qubits). The grader checks the resulting state vector, which should be L=(000111)/2|-_L\rangle = (|000\rangle - |111\rangle)/\sqrt{2} — amplitude +1/2+1/\sqrt2 on index 0 and 1/2-1/\sqrt2 on index 7.

Run your code to see the quantum state.

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