While reading the Quantum algorithm Wikipedia entry, I noticed that the sentence "A quantum circuit consists of simple quantum gates which act on at most a fixed number of qubits", was annotated with a "why?".
Quantum circuits are a way to visualize a quantum operation/algorithm. As such, they are constrained by what you can reasonably express in a drawing. Simple algorithms on a small number of qubits are easy to express - for example, the ubiquitous teleportation circuit.
Algorithms on a variable number of qubits or algorithms that mix classical processing with quantum get harder to express, and the more complicated the algorithm is, the harder it gets.
- You can denote a variable number of qubits by crossing a wire and writing N on it.
- You can denote a loop by omitting some gates, replacing them with dots and specifying the number of iterations.
- You can replace both some wires and some gates with dots.
- But what do you do if the body of a loop consists of multiple gates that vary on each iteration? If there are classical controls involved? If the number of loop iterations depends on measurement results? If you want to measure a qubit and do something with it afterwards? If the algorithm takes a thousand gates, let alone a million? The circuit diagrams become rather unreadable rather fast.
This is similar to flow charts for classical algorithms - you can use them to visualize a small algorithm, maybe for educational purposes, or a high-level structure of a big algorithm, but you just can't express the internals of, say, a web-browser as a flow chart.