Lecture Outline: Quantum Complexity Theory

5.1 What is (Computational) Complexity Theory?

Complexity theory and quantum computing

Computational complexity theory focuses on classifying computational problems according to their resource usage, and relating classes of problems to each other. (Wikipedia)

5.1.1 Examples of computational problems

  1. Multiplication. Given a pair of integers \((m,n)\) as input, compute their product

  2. Factoring. Given a composite number \(n\) as input, decompose \(n\) into a product of smaller integers

  3. Satisfaction (SAT). Given a set of constraints on a set of Boolean variables, decide if the constraint system is satisfiable or not

    \((x_1 \lor x_3 \lor \neg x_4) \land (x_1 \lor \neg x_2 \lor \neg x_3 \lor x_4) \land \cdots\)

  4. Counting (#SAT). Given a set of constraints on a set of Boolean variables, compute the number of different solutions to the constraint system

  5. True Quantified Boolean Formula. Given a formula in quantified propositional logic where every variable is quantified by either existential or universal quantifiers at the beginning of the formula, decide if the formula evaluates to true

    \(\forall x_1 \exists x_2 \forall x_3 \forall x_4 ((x_1 \lor x_3 \lor \neg x_4) \land (x_1 \lor \neg x_2 \lor \neg x_3 \lor x_4) \land \cdots)\)

5.1.1.1 Remarks

  1. A family of problem instances, indexed by the input size

  2. Decision problems, search problems, promise problems

    Decision problem: a set \(A \subseteq \Sigma^*\) where \(\Sigma = \{0,1\}\)

    Promise problem: disjoint sets \(A_{yes}, A_{no} \subseteq \Sigma^*\)

5.1.2 Computational resources

5.1.2.1 Time, space, depth, query, …

5.1.2.2 Computational models

  • Turing machines

    A brief discussion of TMs

    Transition rule \(\delta: Q \times \Gamma \rightarrow Q \times \Gamma \times \{L, R\}\)

    Configuration of a TM

    1. Current state \(q\)
    2. Current tape content
    3. Current head position
  • Classical and quantum circuit models

    Classical circuits are not necessarily reversible

5.1.2.3 Efficient computation

Polynomial-time (mathematically simple, model-independent)

5.1.3 P vs NP

5.1.4 Church-Turing thesis

A problem is (efficiently) computable by an effective method if and only if it is (efficiently) computable by a Turing machine.

Quantum computing is a candidate that disproves the extended Church-Turing thesis.

5.1.5 Exercise 1

Let \(n\) be a composite number. It is then easy to see that \(n\) has a factor at most \(\sqrt{n}\). Does this fact give us an efficient algorithm for factoring?

5.1.6 Exercise 2

The decision version of the factoring problem asks if \(n\) has a factor less than \(k\) when given \((n, k)\) as input. Show that the factoring problem is efficiently reducible to this decision version. That is, if there is an efficient algorithm for the decision version, there is also an efficient algorithm for the standard version.

5.2 BQP: Efficient Quantum Computation

5.2.1 Definition

Let \(A = (A_{yes}, A_{no})\) be a promise problem and let \(c,s: \mathbb{N} \rightarrow [0,1]\) be functions. Then \(A \in \class{BQP}(c,s)\) if and only if there exists a polynomial-time uniform family of quantum circuits \(\{Q_n: n\in \mathbb{N}\}\), where \(Q_n\) takes \(n\) qubits as input and outputs 1 bit, such that

The class \(\class{BQP}\) is defined as \(\class{BQP} = \class{BQP}(2/3,1/3)\).

5.2.2 Error reduction for BQP

Theorem. Let \(p: \mathbb{N} \rightarrow \mathbb{N}\) be a polynomially bounded function satisfying \(p(n) \ge 2\) for all \(n\). Then it holds that \(\class{BQP}\) = \(\class{BQP}(1-2^{-p}, 2^{-p})\).

5.2.3 BQP subroutine theorem

Theorem. \(\class{BQP}^{\class{BQP}} = \class{BQP}\).

5.2.4 Complexity classes of oracle machines

An oracle is a subset \(B \subseteq \Sigma^*\). An oracle Turing machine with oracle \(B\) attached is a Turing machine which may call the oracle \(B\) at intermediate computational steps and the call counts as a single step.

\(\class{P}^B\), \(\class{NP}^B\), …

Oracles in the circuit model: in addition to the usual gates, we have a family of big gates \(\{O_m\}\) such that

\[\begin{equation*} O_{|y|}(y) = \begin{cases} 1 & y \in B,\\ 0 & y \not\in B. \end{cases} \end{equation*} \]

For a complexity class \(\class{C}\), we define

\[\begin{equation*} \class{P}^{\class{C}} = \bigcup_{B \in \class{C}} \class{P}^B. \end{equation*} \]

\(\class{NP}^\class{NP}\) and the polynomial hierarchy

In the quantum case, we adopt the form of the oracle access as \(O_m : \ket{y,a} = \ket{y, a \oplus O_m(y)}\)

5.2.5 Proof

What do we need to prove?

Two difficulties:

  1. The output of a BQP circuit is probabilistic
  2. We need to simulate the behaviour of the \(O_m\) gate on all qubits

5.2.7 Relation with classical friends

Meet more complexity animals at Complexity Zoo!

\(\class{P} \subseteq \class{BPP} \subseteq \class{BQP} \subseteq \class{QMA} \subseteq \class{PP} \subseteq \class{PSPACE}\)

Conjecture. \(\class{BQP}\) is not contained in \(\class{NP}\) and vice versa.

5.2.8 BQP vs PP

Theorem. \(\class{BQP} \subseteq \class{PP}\).

5.2.9 Beyond BQP: Quantum Merlin Arthur

5.2.9.1 Definition

Let \(A = (A_{yes}, A_{no})\) be a promise problem and let \(c,s: \mathbb{N} \rightarrow [0,1]\) be functions. Then \(A \in \class{QMA}(c,s)\) if and only if there exists a polynomial-time uniform family of quantum circuits \(\{Q_n: n\in \mathbb{N}\}\), where \(Q_n\) takes \(n + m(n)\) qubits as input for some polynomial \(m\) and outputs 1 bit, such that

  • (Completeness) if \(x \in A_{yes} \cap \Sigma^n\) then there exists an \(m(n)\)-qubit state \(\ket{\psi}\) such that \(\Pr [ Q_n(x, \ket{\psi}) = 1 ] \geq c(n)\), and
  • (Soundness) if \(x \in A_{no} \cap \Sigma^n\) then for all \(m(n)\)-qubit state \(\ket{\psi}\), \(\Pr [ Q_n(x, \ket{\psi}) = 1 ] \leq s(n)\).

The class \(\class{QMA}\) is defined as \(\class{QMA}(2/3,1/3)\).

Quantization of both the witness and the circuit.

5.2.9.2 Satisfiability and local Hamiltonian problem

Definition. A \(k\)-local Hamiltonian \(H\) is a summation \(H = \sum_{j=1}^m H_j\) of local terms \(H_j\) acting on at most \(k\) qubits (out of \(n\) qubits). The \(k\)-local Hamiltonian problem is the promise problem with

  • Input: \((H,a,b)\) where \(H\) is a \(k\)-local Hamiltonian, \(a, b\) are real numbers such that \(b - a \ge 1/poly(n)\),
  • Yes instances: The smallest eigenvalue of \(H\) is at most \(a\),
  • No instances: The smallest eigenvalue of \(H\) is at least \(b\).

A 3-SAT clause as a Hamiltonian term

  • Quantum Cook-Levin Theorem. The \(k\)-local Hamiltonian problem is \(\class{QMA}\)-complete for all \(k \ge 2\).

5.2.9.3 Circuit to Hamiltonian construction

Aharonov and Naveh, Quantum NP: A Survey

5.2.9.4 Error reduction for QMA

Marriott and Watrous, Quantum Arthur-Merlin Games

5.2.10 Exercise 3

Write down a definition of \(\class{BQP}\) without looking at any reference. Compare it with the definition given above and see if you have missed anything.

5.2.11 Exercise 4

Prove the error reduction theorem for \(\class{BQP}\).

5.2.12 Exercise 5

Prove that BQP is in PSPACE