Quantum Circuits

Like classical circuits, quantum circuits can be thought of as directed acyclic graphs. A register of qubits refers to a collection of qubits like the classical bitstring. A quantum circuit can consist of one or more registers which partition the qubits. The nodes of the graph represent unitary quantum gates. Starting from an initial state which represents the input, the qubits are fed through quantum gates. If gates are to be applied sequentially on some qubits, then the overall action of this sequence of gates is given by the ordinary matrix product of the individual gates in the same sequential order. If quantum gates are to be applied to different parts of the register in parallel, then the tensor product of these gates gives the overall action on the registers.

A significant difference for quantum circuits is the necessity of performing a measurement on all or some of the qubits at the end of a computation to yield an output corresponding to some computational basis state. Since the measurement process is inherently probabilistic, it follows that the model of quantum computation is itself a probabilistic model. Obviously, quantum circuits do differ from classical circuits, but it can be shown that quantum circuits can simulate the action of any classical circuit and vice versa, but going in the latter direction may require substantially more resources or gates.

In summary, the objective of quantum computation is to start with some finite number of qubits. Then apply quantum gates to manipulate the qubits in such a way so that upon measurement a meaningful output state yielding a correct solution is observed with high probability.