Notes PDF
Notes PDF
Anuj Dawar
Central research tasks include:
• Building devices — with a specified behaviour.
3 4
Specified Behaviour – the only descriptions that work on the very small scale are
quantum
Physics
• Exploit quantum phenomena
– using quantum phenomena may allow us to perform
Dragons
computational tasks that are not otherwise possible/efficient
– understand capabilities/resources
5 6
7 8
Bits Qubits
A building block of classical computational devices is a two-state Quantum mechanics tells us that any such system can exist in a
system. superposition of states.
Indeed, any system with a finite set of discrete, stable states, with where, α and β are complex numbers, satisfying
controlled transitions between them will do. |α|2 + |β|2 = 1
9 10
Qubits Measurement
In general, however, After the measurement, the system is in the measured state!
α |0i α and β are complex
numbers.
That is, further measurements will always yield the same value.
11 12
Measurement Vectors
Basis Example
" #
Any pair of vectors |φi, |ψi ∈ C2 that are linearly independent √1
The vector 2
measured in the computational basis gives
could serve as a basis. √1
2
either outcome with probability 1/2.
α|0i + β|1i = α′ |φi + β ′ |ψi
Most of the time, we assume a standard (orthonormal) basis |0i it gives the first outcome with probability 1.
and |1i is given.
This will be called the computational basis
15 16
Entanglement Entanglement
An n-qubit system can exist in any superposition of the 2n basis Compare the two (2-qubit) states:
states. 1 1
√ (|00i + |01i) and √ (|00i + |11i)
α0 |000000i + α1 |000001i + · · · + α2n −1 |111111i 2 2
P2n −1
with i=0 |αi |2 = 1
If we measure the first qubit in the first case, we see |0i with
probability 1 and the state remains unchanged.
Sometimes such a state can be decomposed into the states of
individual bits
In the second case (an EPR pair), measuring the first bit gives |0i
1 1 1
(|00i + |01i + |10i + |11i) = √ (|0i + |1i) ⊗ √ (|0i + |1i) or |1i with equal probability. After this, the second qubit is also
2 2 2
determined.
1 2
Linear Algebra
Quantum Computing
Lecture 2 The state space of a quantum system is described in terms of a
vector space.
Anuj Dawar
Vector spaces are the object of study in Linear Algebra.
3 4
Vector Spaces Cn
A vector space over C is a set V with α1
..
• a commutative, associative addition operation + that has Cn is the vector space of n-tuples of complex numbers:
. .
– 1|vi = |vi. . .
and scalar multiplication z . .
. = .
αn zαn
5 6
7 8
A linear operator A from one vector space V to another W is a Given a choice of bases |v1 i, . . . , |vn i and |w1 i, . . . , |wm i, let
function such that: m
X
A|vj i = αij |wi i
A(α|ui + β|vi) = α(A|ui) + β(A|vi) i=1
11 12
The standard inner product on Cn is obtained by taking, for The norm of a vector |vi (written || |vi||) is the non-negative, real
X X number:
|ui = ui |ii and |vi = vi |ii p
i i
|| |vi|| = hv|vi.
Note: hu| is a bra, which together with |vi forms the bra-ket hu|vi. An orthonormal basis for an inner product space V is a basis made
up of pairwise orthogonal, unit vectors.
the term Hilbert space is also used for an inner product space
13 14
X
A= Aij |iihj|. Each operator has at least one eigenvalue.
ij
15 16
A linear operator A is diagonalisable if Associated with any linear operator A is its adjoint A† which
X satisfies
A= λi |vi ihvi |
i
hv|Awi = hA† v|wi
AA† = A† A AA† = A† A = I
19 20
Anuj Dawar
It is not itself a physical theory.
3 4
The four postulates specify a general framework for describing the Associated to any physical system is a complex inner product space
behaviour of a physical system. (or Hilbert space) known as the state space of the system.
1. How to describe the state of a closed system.—Statics or state The system is completely described at any given point in time by
space its state vector, which is a unit vector in its state space.
Any system whose state space can be described by C2 —the The time evolution of closed quantum system is described by the
two-dimensional complex vector space—can serve as an Schrödinger equation:
implementation of a qubit.
d|ψi
Example: An electron spin. i~ = H|ψi
dt
7 8
In this course, most linear operators we will be interested in are A particularly useful set of 1-qubit gates are the Pauli Gates.
unitary. The X gate
They can be represented as matrices where each column is a unit
X
vector and columns are pairwise orthogonal.
0 1
Another useful representation of unitary operators we will use is as X|0i = |1i X|1i = |0i X=
1 0
gates:
The Y gate
G
Y
11 12
The measurement operators satisfy the completeness equation. We are generally interested in the special case where the
X measurement operators are projections onto a particular
†
Pm Pm = I orthonormal basis of the state space (which we call the
m∈M
computational basis).
Exercise: Verify!
15 16
For any state |ψi, and any θ, we can form the vector eiθ |ψi. In contrast, consider the two states |ψ1 i = √1 (|0i + |1i) and
2
|ψ2 i = √1 (|0i − |1i).
2
Then, for any unitary operator U , Measured in the computational basis, they yield the same outcome
probabilities.
U eiθ |ψi = eiθ U |ψi
Thus, such a global phase is unobservable and the states are H|ψ1 i = |0i H|ψ2 i = |1i
physically indistinguishable.
17 18
The state space of a composite physical system is the tensor A state of a combined system is separable if it can be expressed as
product of the state spaces of the individual component physical the tensor product of states of the components.
systems. E.g.
1 1 1
If one component is in state |ψ1 i and a second component is in (|00i + |01i + |10i + |11i) = √ (|0i + |1i) ⊗ √ (|0i + |1i)
2 2 2
state |ψ2 i, the state of the combined system is
|ψ1 i ⊗ |ψ2 i If Alice has a system in state |ψ1 i and Bob has a system in
state |ψ1 i, the state of their combined system is |ψ1 i ⊗ |ψ1 i.
If Alice applies U to her state, this is equivalent to
Not all states of a combined system can be separated into the applying the operator U ⊗ I to the combined state.
tensor product of states of the individual components.
19 20
The following states of a 2-qubit system cannot be separated into Postulate 1: A closed system is described by a unit vector in a
components parts. complex inner product space.
Postulate 2: The evolution of a closed system in a fixed time
1 1
√ (|10i + |01i) and √ (|00i + |11i) interval is described by a unitary transform.
2 2
Postulate 3: If we measure the state |ψi of a system in an
orthonormal basis |0i · · · |n − 1i, we get the result |ji with
Note: Physical separation does not imply separability. Two probability |hj|ψi|2 . After the measurement, the state of the
particles that are physically separated could still be entangled. system is the result of the measurement.
Postulate 4: The state space of a composite system is the tensor
product of the state spaces of the components.
1 2
Quantum Circuits
Quantum Computing
Lecture 4 A quantum circuit is a sequence of unitary operations and
measurements on an n-qubit state.
Anuj Dawar
Input State U1 U2 U3
Models of Quantum Computation M
3 4
A quantum algorithm specifies, for each n, a sequence As a model of computation, this is parasitic on classical models.
of n-qubit operations.
Purely quantum models can be defined. We will see more on this in
Lecture 8.
The map n → On must be computable.
i.e. the individual circuits must be generated from a What computations can be performed in the model as defined?
common pattern.
What functions can be computed?
What decision problems are decidable?
All measurements can be deferred to the end (possibly, at the
expense of increasing the number of qubits).
Can all such computations be performed with some fixed set of
unitary operations?
5 6
Could we find a quantum circuit to simulate a classical And gate? If f : {0, 1}n → {0, 1}m is a Boolean function, the map
|xi 7→ |f (x)i
a a∧b
And may not be unitary.
b
7 8
We have already seen the Pauli Gates: When we draw a circuit with a one-qubit gate, this must be read as
" # " # " # a unitary operation on the entire state.
0 1 0 −i 1 0
X= ,Y = ,Z =
1 0 i 0 0 −1
U
H
This does not change measurement outcomes on the second qubit.
9 10
The Controlled Not is a 2-qubit gate: More generally, we can define, for any single qubit operation U , the
Controlled U gate:
|ai |ai The controlled not flips the sec-
ond qubit if the first qubit is |1i
|bi |a ⊕ bi and leaves it unchanged if it’s |0i |0xi 7→ |0xi
U
|1xi 7→ |1, U xi
11 12
A permutation matrix is a unitary matrix where all entries are g ′ (x, 0) = (x, g(x)).
0 or 1.
The Toffoli gate can be implemented using 2-qubit quantum gates. Fact: Any unitary operation on n qubits can be implemented by a
sequence of 2-qubit operations.
Q
Fact: Any unitary operation can be implemented by a combination
Q† Q† P of C-NOTs and single qubit operations.
15 16
One use of the box suffices which is |0i if f is constant and |1i if f is balanced.
1 2
Some Applications
Quantum Computing
Lecture 5 We look at some applications of the encoding of information in
quantum states.
3 4
A protocol for quantum key distribution was described by Bennett The BB84 protocol relies on the following assumptions:
and Brassard in 1984 (and is known as BB84).
• Alice has a source of random (classical) bits.
Eve • Alice can produce qubits in states |0i and |1i.
qubit channel The protocol does not pro-
• Alice can apply a Hadamard operator H to the qubits.
Alice Bob vide the means of transmit-
classical channel ting an arbitrary message. • Bob can measure incoming qubits
– either in the basis |0i, |1i;
At the end of the protocol, there is a random sequence of bits that – or in the basis √1 (|0i + |1i), √1 (|0i − |1i).
2 2
is shared between Alice and Bob but unknown to any third party.
These conditions are satisfied, for instance, by a system based on
polarised photons.
5 6
Alice sends Bob a stream of qubits. • For each qubit, Bob randomly chooses either the basis |0i, |1i
or the basis H|0i, H|1i and measures the qubit in the chosen
For each qubit, before sending it, she basis.
• randomly chooses a bit |0i or |1i; • Bob announces (over the classical channel) which basis he used
for each measurement.
• randomly either applies H to the qubit or not; and
• Alice tells Bob which measurements were made in the correct
• sends it to Bob.
basis.
So, Bob receives a random sequence of qubits, each of which is in • The qubits which were measured in the wrong basis are
one of the four states: discarded, while the rest form a shared key.
7 8
Attacks Attack 2
Why not announce the bases for all qubits before transmission, What happens if Eve intercepts the qubits, measures each one
thus avoiding the loss of half the bits? randomly in either the basis |0i, |1i or the basis H|0i, H|1i and
This allows Eve to intercept, measure and re-transmit the then retransmits it?
bits.
Why not wait until Bob has received all the qubits, then have Alice For half of the bits that are shared between Alice and Bob, Eve will
announce the basis for each one before Bob measures them? have measured them in the wrong basis.
Moreover, these bits will have changed state, and so for approx. 14
• Requires Bob to store the qubits—currently technically
of the shared bits, the value measured by Bob will be different to
difficult.
the one encoded by Alice.
• If Bob can store the qubits, then Eve can too and then she can
Alice and Bob can choose a random sample of their shared bits and
retransmit after measurement.
publically check their values against each other and detect the
If we could fix the basis before hand, this could be used to transmit presence of an eavesdropper.
a fixed (rather than random) message.
9 10
Could Eve intercept the qubits, make a copy without measuring Quantum key distribution relies on nothing more than
them and re-transmit to Bob and then wait for the basis to be
• linear superposition of states; and
announced?
• change of basis.
No Cloning Theorem:
There is no unitary operation U which for an arbitrary In particular, it does not rely on entanglement.
state ψ gives We next look at some applications of entanglement.
U |ψ0i = |ψψi.
11 12
Entanglement based protocols generally rely on using the following We can generate the Bell states from the computational basis
four states of a two-qubit system, known as the Bell states. |00i, |01i, |10i, |11i using the following circuit:
1 1
√ (|00i + |11i), √ (|01i + |10i)
2 2 H
1 1
√ (|00i − |11i), √ (|01i − |10i)
2 2
These form an orthonormal basis for C4 , known as the Bell basis. |00i √1 (|00i + |11i)
2
√1 (|00i + |10i)
Note that, in each of the states, measuring either qubit in the 2
In general, it is impossible to extract more than one classical bit of Generating Bell states from √1 (|00i + |11i) with only operations on
2
information from a single qubit. the first qubit.
1
√ (|00i + |11i)
2 1 1
(Z ⊗ I) √ (|00i + |11i) = √ (|00i − |11i)
2 2
Then Alice can perform an operation solely on her own qubit, and
then send it to Bob to convey two bits of information.
1 1
((XZ) ⊗ I) √ (|00i + |11i) = √ (|01i − |10i)
2 2
15 16
Once he has both qubits, Bob can convert back to the The superdense coding protocol allows Alice to send Bob two
computational basis using the circuit. classical bits by transmitting a single qubit, provided they already
share an entangled pair.
H
Alice has a state |φi that she wishes to transmit to Bob. The two Alice conveys to Bob the result of her measurement. Say the qubit
already share a pair of qubits in state √12 (|00i + |11i). in Bob’s possession is in state |θi, then:
• If Alice measures |00i, then |φi = |θi.
• If Alice measures |01i, then |φi = X|θi.
|φi H • If Alice measures |10i, then |φi = Z|θi.
M
• If Alice measures |11i, then |φi = XZ|θi.
Entangled Pair
Thus, Bob performs the appropriate operation and now has a qubit
whose state is exactly |φi.
1 2
Search Problems
Quantum Computing
Lecture 6 One of the two most important algorithms in quantum computing
is Grover’s search algorithm—first presented by Lov Grover in 1996.
Given a black box which can take any of N inputs, and for each of
them gives a yes/no answer, Grover’s algorithm allows us to find
√
the unique value for which the answer is yes in O( N ) steps (with
high probability).
3 4
|bi |b ⊕ f (x)i
5 6
replacements
Grover’s Algorithm Grover’s Algorithm Schematic
√
O( N )
Suppose further that there is exactly one n-bit value a such that z }| {
|0i H
f (a) = 1
|0i H
Uf W ··· Uf W M
and for all other values x, |0i H
|0i H
f (x) = 0.
|0i−|1i
Grover’s algorithm gives us a way of using the black box Uf to The operator G = (W ⊗ I)Uf is known as the Grover Iterate (we
√
determine the value a with O( N ) = O(2n/2 ) calls to Uf . will see soon what W is).
7 8
As the “output qubit” is |0i − |1i, it remains unaffected by the We write H ⊗n for the fol- And X ⊗n for the following
action of Uf , which we can think of instead as a conditional phase lowing operation: operation:
change on the n input qubits.
H
X
H X
|ai 7→ −|ai n inputs n inputs
H X
|xi 7→ |xi for any x 6= a
H X
We will ignore the output bit completely and instead talk of the
n-bit operator V above. Each of these can, of course, be implemented by a series of n
Note: V = I − 2|aiha|. 1-qubit operations.
We write cZ ⊗n for the n-bit controlled-Z gate: Now, we can define W by:
W = (−1)H ⊗n (X ⊗n cZ ⊗n X ⊗n )H ⊗n .
1 0 ··· 0
= (−1)H ⊗n (I − 2|0n ih0n |)H ⊗n
0 1 ··· 0
n inputs
cZ ⊗n = .. .. .. ..
.
. . .
Write |Ψi for the state
Z 0 0 · · · −1 N −1
⊗n n 1 X
H |0 i = √ |ii.
N i=0
cZ ⊗n can be implemented using O(n) cZ and Toffoli gates, using
some workspace qubits (Exercise). So, W = (−1)(I − 2|ΨihΨ|), i.e.
W = 2|ΨihΨ| − I.
11 12
Since G = W V , we have We can picture the action of W and V in the two-dimensional real
plane spanned by the vectors |ai and |Ψi.
G = (2|ΨihΨ| − I)(I − 2|aiha|).
|ai
V is a reflection
W V |Ψi about the line per-
Consider the actions of W and V on the two states |Ψi and |ai.
pendicular to |ai.
2θ |Ψi W is a reflection
W |Ψi = |Ψi W |ai = √2 |Ψi − |ai.
N θ about |Ψi.
V |Ψi = |Ψi − √2 |ai V |ai = −|ai The composition of
N
V |Ψi two reflections of the
Thus, as we start the algorithm in state |Ψi, the result of repeated plane is always a ro-
applications of V and W will always give a real linear combination tation.
of |ai and |Ψi.
13 14
15 16
Grover’s algorithm works even if the solution |ai is not unique. For classical algorithms, searching an unstructured space of
solutions (such as given by a black box for f ), it is easy to show a
Suppose there is a set of solutions S ⊆ {0, . . . , N − 1} and let Ω(N ) lower bound on the number of calls to the black box required
M = |S| be the number of solutions. to identify the unique solution.
As the angle between these is smaller, the number of iterations Grover’s algorithm does not allow quantum computers to solve
drops, but so does the probability of success. NP-complete problems in polynomial time.
1 2
Quantum Factoring
Quantum Computing
Lecture 7 A polynomial time quantum algorithm for factoring numbers was
published by Peter Shor in 1994.
Anuj Dawar polynomial time here means that the number of gates is
bounded by a polynomial in the number of bits n of the
number being factored.
Quantum Factoring
The best known classical algorithms are exponential (in n1/3 ).
3 4
Suppose we are given a function f : N → {0, . . . , N − 1} which we Suppose we are given an integer N and an a with a < N and
know is periodic, i.e.
gcd(a, N ) = 1.
f (x + r) = f (x) for some fixed r and all x.
Factoring Factoring–contd.
Suppose (for simplicity) N = pq, where p and q are prime. And, for So, (x − 1)(x + 1) = kpq for some k.
some a < N , we know the period r of the function fa . Now, finding gcd(N, x − 1) and gcd(N, x + 1) will find p and q.
r+1 r
Then, a ≡ a (mod N ), so a ≡ 1 (mod N ).
If we randomly choose a < N
r/2 2 r
If r is even and a + 1 6≡ 0 (mod N ), then take x = a .
(and check that gcd(a, N ) = 1—if not, we’ve already found
x2 − 1 ≡ 0 (mod N ) a factor of N )
1
(x − 1)(x + 1) ≡ 0 (mod N ) then, there is a probability > 2 that
7 8
A fast period-finding algorithm allows us to factor numbers quickly. The discrete Fourier transform of a sequence of complex numbers
x0 , . . . , xM −1
The idea is to use a Fourier Transform to find the period of a
function f . is another sequence of numbers
y0 , . . . , yM −1
Note, classically, we can use the fast Fourier transform algorithm
for this purpose, but it can be shown that this would require time where
M −1
N log N , which is exponential in the number of bits of N . 1 X
yk = √ xj e2πijk/M
M j=0
or
M −1
1 X
yk = √ xj ω jk .
M j=0
where ω = e2πi/M .
9 10
11 12
Computing the discrete Fourier transform classically takes time Suppose M = 2n , and let |xi be a computational basis state in CM
polynomial in M . with binary representation x1 · · · xn .
Let
Shor showed that D can be implemented using a number of one and ηj = e2πi(0·xj xj+1 ···xn ) .
two-qubit gates that is only polynomial in the number of qubits
O((log M )2 ).
Then
Note: This does not give a fast way to compute the DFT on a D|xi = (|0i + ηn |1i)(|0i + ηn−1 |1i) · · · (|0i + η1 |1i).
quantum computer.
There is no way to extract all the complex components from the
transformed state. Exercise: Verify.
13 14
We can use this form to implement the quantum Fourier transform Here
using Hadamard gates and conditional phase-shift gates.
1 0 1 0 1 0
P = Q= R=
0 i 0 eiπ/4 0 eiπ/8
H
15 16
We apply the n-qubit quantum Fourier transform to the first n bits The probability of observing a given state |yi is:
of the transformed state. m−1 2
1 X kry
ω .
2n m
m−1
X k=0
√1
D m
|x0 + kri
k=0
n
2X −1 m−1
1 X (x0 +kr)y
= 1
2n/2
√ ω |yi This probability function has peaks when ry/2n is close to an
m
n
y=0 k=0 integer.
2X −1 m−1
1 X
x0 y kry
Indeed, if ry/2n is an integer, then the probability of measuring y
= ω √ ω |yi.
2n/2 m k=0
y=0 is 1.
2πi/2n
where ω = e .
Given an integer multiple of 2n /r, it is not difficult to find r.
19 20
To complete the factoring algorithm, we need to check that we can The two measurement steps can be combined at the end, with the
also implement the unitary transform Uf for the particular function Fourier transform applied before the measurement of f (x).
fa (x) = ax mod N. The probability of successfully finding the period in any run of the
with a number of quantum gates that is polynomial in log N . algorithm is only about 0.4.
However, this means a small number of repetitions will suffice to
This is achieved through repeated squaring. find the period with high probability.
Models of Computation
Quantum Computing
Lecture 8 Shor’s algorithm solves, in polynomial time, a problem for which no
classical, deterministic polynomial time algorithm is known.
Anuj Dawar
What class of problems are solvable by quantum machines in
polynomial time?
Quantum Automata and Complexity More generally, how does quantum parallelism compare with other
forms of parallelism and nondeterminism.
3 4
Its operation can be described by a Each column of each matrix is a unit vector with 0, 1
b pair of matrices. entries.
1 0 0 0 More generally, we can form a matrix Mw for each word w.
Ma = Mb =
0 1 1 1 Multiplication of matrices corresponds to concatenation of
words.
Mb Mb Ma describes the operation on states performed by reading
Mw |ii = |ji if there is a path labelled w from state i to state j.
the string abb.
5 6
7 8
We obtain probabilistic automata if we allow fractional values in A probabilistic automaton A accepts a language L with certainty if
Mσ .
1 if w ∈ L
with the proviso that each column adds up to 1. P (A accepts w) =
0 if w 6∈ L
0.5 0.0 0.8 0.2
E.g. Ma = Mb = A accepts a language L with bounded probability if there is an
0.5 1.0 0.2 0.8
ǫ < 1/2 such that:
> 1 − ǫ if w ∈ L
0.4 0.1 gives, in position (i, j) the prob-
P (A accepts w) =
M a Mb = ability that string ba takes you <ǫ if w 6∈ L
0.6 0.9
from state i to state j.
Quantum finite automata are obtained by letting the matrices Mσ If q is the starting state of the automaton,
have complex entries.
Mw |qi
We also require each of the matrices to be unitary.
is the state after reading w. If
11 12
− √12
√1 √1
Ma = 2 2
Because of the reversibility requirement, quantum automata are q1 q2
−1
√ √1
quite a weak model. √1
2 2
2
There are regular languages that cannot be accepted by a QFA. While there are two distinct paths la-
0 1 belled aa from q1 back to itself, and each
Maa =
−1 0 has non-zero probability, the net proba-
However, QFAs may be much more succinct than their classical
bility of ending up in q1 is 0.
counterparts.
The automaton accepts a string of odd length with probability 0.5
and a string of even length with probability 1 if its length is not a
multiple of 4 and probability 0 otherwise.
13 14
A Turing machine, in addition to the finite set of states in the If c0 is the configuration in the starting state, with w on the tape
automaton has an infinite read-write tape. and the tape head at the left end of the string, w is accepted if the
computation
A machine is determined by an alphabet Σ, a finite set of states Q c0 → c 1 → · · · → c f
and a transition function δ which gives, for each state and symbol: eventually reaches an accepting state.
a next state, a replacement symbol and a direction in which to
If the length of the computation is bounded by a polynomial in the
move the tape head.
length of w, the language accepted by the machine is in P.
15 16
In a nondeterministic machine, δ determines, for each state and With a probabilistic machine, δ defines, for each current state and
symbol, a set of next moves. symbol, a probability distribution over the possible next moves.
This gives rise to a tree of configurations:
c4 The action of the machine can be defined as an infinite matrix,
c1 where the rows and columns are configurations, and each column
c5 A configuration may occur in several
c6 places in the tree. adds up to 1.
c2
c0 c7
The initial string w is accepted by the ma- However, how much information can be encoded in a single entry?
c8 chine if there is some path through the We require the entries α to be feasibly computable. That is, there is
c3 c9 tree leading to an accepting state. a feasibly computable f such that:
c10
|f (n) − α| < 2−n
If the height of the tree is bounded by a polynomial in the length of
w, then the language is in NP
17 18
BPP is the collection of languages L for which there is a With a Quantum Turing machine, δ associates with each state and
probabilistic machine M , running in polynomial time with: symbol, and each possible next move, a complex probability
> 2 if w ∈ L amplitude (which we require to be a feasible complex number).
3 The machine can be seen as progressing
P (M accepts w) =
< 1 if w 6∈ L
3 c4 through a series of stages, each of which
c1 is a superposition of configurations.
The class of languages is unchanged if we replace 23 and 13 by 1 − ǫ c5
and ǫ, for any ǫ < 12 , or indeed the set of all feasibly computable α0 c6
c Note that the probability of c7 occurring
probabilities with {0, 12 , 1}. c0 α1 2
at time 2 may be less than the sum of the
α2 c7 probabilities along the two paths.
The only inclusion relations we know are P⊆NP and P⊆BPP. c8
c3
c9 We also require that the linear transfor-
Primality testing, long known to be in NP and in BPP was shown mation defined by the machine is unitary.
in 2002 to be in P.
19 20
The class BQP is not changed if we restrict the set of possible BPP
amplitudes to {0, ± 35 , ± 54 , 1}. P BQP
BPP ⊆ BQP