|q⟩ Bad Qubits

advanced · Physics · Measurement-Based Quantum Computation

Cluster States

A cluster state is the entangled resource that powers the one-way model. It is built by a recipe so simple it can be stated in one line — initialize every qubit in ∣+⟩|+\rangle and apply a controlled-ZZ across every edge of a graph — yet the resulting state carries exactly the entanglement structure that single-qubit measurements can later sculpt into any quantum algorithm.

The construction

Fix a graph G=(V,E)G = (V, E): a set of vertices VV, one qubit each, and a set of edges EE. The cluster state ∣CG⟩|C_G\rangle is defined by

∣CG⟩=(∏(a,b)∈ECZab)⨂v∈V∣+⟩v.|C_G\rangle = \left(\prod_{(a,b) \in E} CZ_{ab}\right) \bigotimes_{v \in V} |+\rangle_v .

Two facts make this well defined regardless of the order you build it:

The controlled-ZZ gate is diagonal,

CZ=diag(1,1,1,−1),CZ = \mathrm{diag}(1, 1, 1, -1),

flipping the sign of ∣11⟩|11\rangle and leaving the other three computational basis states untouched.

The smallest example: ∣C2⟩|C_2\rangle

Take the graph with two vertices and a single edge, V={0,1}V = \{0, 1\}, E={(0,1)}E = \{(0,1)\}. Start from

∣+⟩∣+⟩=12(∣00⟩+∣01⟩+∣10⟩+∣11⟩),|+\rangle|+\rangle = \tfrac12\big(|00\rangle + |01\rangle + |10\rangle + |11\rangle\big),

and apply CZ01CZ_{01}. Only the ∣11⟩|11\rangle term picks up a minus sign:

∣C2⟩=CZ01 ∣+⟩∣+⟩=12(∣00⟩+∣01⟩+∣10⟩−∣11⟩).|C_2\rangle = CZ_{01}\,|+\rangle|+\rangle = \tfrac12\big(|00\rangle + |01\rangle + |10\rangle - |11\rangle\big).

You can check this is maximally entangled: it is local-unitary equivalent to a Bell state. Applying a Hadamard to the second qubit gives 12(∣00⟩+∣11⟩)\tfrac{1}{\sqrt2}(|00\rangle + |11\rangle). The single minus sign is the entire entanglement content of the two-qubit cluster.

The stabilizer viewpoint

Cluster states are stabilizer states: each is the unique +1+1 eigenstate of a commuting set of Pauli operators. For every vertex aa,

Ka=Xa∏b : (a,b)∈EZb,Ka ∣CG⟩=+∣CG⟩.K_a = X_a \prod_{b \,:\, (a,b)\in E} Z_b , \qquad K_a\,|C_G\rangle = +|C_G\rangle .

There is one such stabilizer generator per qubit, the generators commute, and together they pin down ∣CG⟩|C_G\rangle completely. For ∣C2⟩|C_2\rangle the two generators are K0=X0Z1K_0 = X_0 Z_1 and K1=Z0X1K_1 = Z_0 X_1. This stabilizer description is the workhorse of the next several lessons: it lets us track what a single-qubit measurement does to the rest of the state without ever writing out an exponentially large state vector.

Larger graphs, richer resources

A linear cluster (a path graph) is a one-dimensional chain; measuring along it teleports a state from one end to the other while applying a programmable single-qubit gate at each step — the subject of the following lessons. A two-dimensional lattice, such as a square grid, adds the cross-links needed for entangling gates between separate logical wires, which is what makes the resource universal. Crucially, the recipe never changes: more qubits in ∣+⟩|+\rangle, more CZCZ gates along more edges.

Try it

Construct the two-qubit cluster state ∣C2⟩=12(∣00⟩+∣01⟩+∣10⟩−∣11⟩)|C_2\rangle = \tfrac12(|00\rangle + |01\rangle + |10\rangle - |11\rangle). Put both qubits in ∣+⟩|+\rangle, then entangle them with a single controlled-ZZ on the edge (0,1)(0,1). The grader checks all four amplitudes — note the lone minus sign on ∣11⟩|11\rangle.

Run your code to see the quantum state.

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