|q⟩ Bad Qubits

advanced · Physics · Quantum Complexity Theory

The Class BQP

BQP\mathsf{BQP}bounded-error quantum polynomial time — is the class of decision problems a quantum computer can solve efficiently. It is the quantum analogue of the classical class BPP\mathsf{BPP}, and making its definition precise forces us to pin down what "a quantum computer" means as a uniform family of circuits with bounded error.

Quantum circuits and a finite gate set

A quantum algorithm on nn-bit inputs is a circuit CnC_n acting on poly(n)\mathrm{poly}(n) qubits, built from a fixed finite gate set such as {H,T,CNOT}\{H, T, \mathrm{CNOT}\}. The input xx is encoded in the starting computational-basis state x00\ket{x}\ket{0\cdots 0} (extra qubits are ancillas initialized to 0\ket{0}), the circuit is applied, and a designated output qubit is measured in the computational basis. The number of gates is the circuit's size and stands for its running time.

Two facts make this well-posed. The Solovay–Kitaev theorem guarantees that the discrete set {H,T,CNOT}\{H, T, \mathrm{CNOT}\} is universal: any fixed-size unitary — for instance any one- or two-qubit gate from another finite universal set — can be approximated to error ε\varepsilon by a circuit of length O(logc(1/ε))O(\log^c(1/\varepsilon)) from this set. (That polylogarithmic bound is for gates of fixed dimension; an arbitrary kk-qubit unitary additionally requires exp(k)\exp(k) gates, since it has 4k\sim 4^k free parameters.) Approximating each gate of one universal construction by gates of another therefore changes running times by only polylogarithmic factors. And we require the family {Cn}\{C_n\} to be uniform: a single classical polynomial-time algorithm, given nn, outputs a description of CnC_n. Uniformity rules out smuggling uncomputable information into the hardware, exactly as it does for classical circuit complexity.

The definition

A language L{0,1}L \subseteq \{0,1\}^* is in BQP\mathsf{BQP} if there is a uniform family of polynomial-size quantum circuits {Cn}\{C_n\} such that, on input xx of length nn, the probability p(x)p(x) that measuring the output qubit yields 11 satisfies

xL  p(x)23,xL  p(x)13.x \in L \ \Rightarrow\ p(x) \ge \tfrac{2}{3}, \qquad x \notin L \ \Rightarrow\ p(x) \le \tfrac{1}{3}.

The gap between 2/32/3 and 1/31/3 is the bounded error, and the two thirds are nothing special.

Why bounded error, not exact

One might hope for an exact quantum class with p(x){0,1}p(x) \in \{0,1\}. But quantum measurement is intrinsically probabilistic, and the gate set is finite, so amplitudes are generally irrational and exact certainty is unnatural. Bounded error is the right physical notion: a real device run a polynomial number of times gives an answer that is correct with overwhelming probability. This mirrors BPP\mathsf{BPP}, where classical randomized algorithms (e.g. for polynomial identity testing) are accepted as efficient despite a small, controllable error.

Robustness of the definition

BQP\mathsf{BQP} is remarkably stable under changes that might seem significant:

Because of this robustness, BQP\mathsf{BQP} is the accepted formalization of "efficiently solvable by a quantum computer," and it is the protagonist of the next several lessons, where we locate it relative to the classical classes and ask which problems separate it from them.

Examples and the headline question

Integer factoring and discrete logarithm are in BQP\mathsf{BQP} via Shor's algorithm, even though no efficient classical algorithm is known for them. Whether BQP\mathsf{BQP} strictly contains BPP\mathsf{BPP} — whether quantum computers are genuinely more powerful than randomized classical ones for decision problems — is open, and is the central question this module circles back to repeatedly.

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