Measurement Patterns
An MBQC algorithm is fully specified by a measurement pattern: a finite recipe of which qubits to prepare, how to entangle them, which single-qubit measurements to perform (and in what order), and how later choices depend on earlier outcomes. The measurement calculus of Danos, Kashefi and Panangaden gives this an exact algebra. This lesson introduces its four kinds of command and the bookkeeping that ties them together.
The four commands
A pattern is a sequence built from exactly four primitive commands, each labelled by the qubit(s) it acts on:
- Preparation — initialise qubit in .
- Entanglement — apply a controlled- to the pair . The set of commands draws the graph of the underlying cluster state.
- Measurement — measure qubit in the basis with , recording the outcome .
- Correction and — apply a Pauli or to qubit , raised to a power that is a known function of earlier outcomes.
A full pattern looks like a product read right to left (commands on the right happen first), for example
The qubits split into the input qubits (carrying the state to be processed), the output qubits (never measured, holding the answer), and everything in between (measured during the run).
Why measurements carry dependencies
Recall the elementary gadget: an outcome leaves a Pauli byproduct (or ) on the next wire. If that wire is later measured at angle , a leftover in front of the measurement is not harmless, because does not commute with the tilted basis. Concretely,
So an earlier byproduct flips the sign of a later measurement angle, and an earlier byproduct shifts it by . These two rules are the heart of the measurement calculus. They mean a later measurement's effective angle depends on earlier outcomes, and we encode this with two outcome sets:
- the -dependency set — outcomes that flip the sign of ;
- the -dependency set — outcomes that shift by .
The measured qubit is then physically measured at the adapted angle
This adaptation is feed-forward, treated in detail next lesson; here the point is simply that the pattern records which earlier outcomes each angle depends on.
Flow: the guarantee that a pattern is runnable
Not every set of commands is a sensible algorithm. We need a consistent partial order on the measurements such that every dependency points backward in time — a qubit's angle may depend only on outcomes already obtained. The structural condition guaranteeing this is called flow (and its generalisation gflow): a map assigning to each non-output qubit a successor, with the dependency sets derived from it, such that the induced order is acyclic.
A worked specification: the Hadamard pattern
The smallest non-trivial pattern realises a Hadamard on a two-qubit line, input on qubit , output on qubit :
Reading right to left: prepare qubit in ; entangle with ; measure qubit at angle (the plain basis); finally apply to the output to cancel the byproduct. The result on qubit is , deterministically. Composing such tiles — feeding each output line into the next tile's input — builds arbitrary single-qubit unitaries, and adding cross-edges between two lines builds entangling gates.
What a pattern is, in one sentence
A measurement pattern is a graph (which qubits, which edges), a list of measurement angles, a dependency structure telling each angle which earlier outcomes to fold in, and a final Pauli correction on the outputs. Equipped with flow, it is a complete, runnable, deterministic specification of a quantum computation — the MBQC analogue of a circuit diagram. The next lesson turns the dependency rules into the explicit feed-forward corrections that make it run.
Sign in on the full site to ask questions and join the discussion.