Consequences and Limits of Nonlocal Strategies

Download Report

Transcript Consequences and Limits of Nonlocal Strategies

Introduction to
Quantum Information Processing
QIC 710 / CS 768 / PH 767 / CO 681 / AM 871
Lecture 19 (2014)
Richard Cleve
DC 2117 / QNC 3129
[email protected]
1
Grover’s quantum
search algorithm
2
Quantum search problem
f : {0,1}n → {0,1}
f is satisfiable (if x  {0,1}n s.t. f(x) = 1)
Given: a black box computing
Goal: determine if
In positive instances, it makes sense to also find such a satisfying
assignment x
Classically, using probabilistic procedures, order 2n queries are
necessary to succeed—even with probability ¾ (say)
Grover’s quantum algorithm that makes only O(2n ) queries
Query:
[Grover ‘96]
x1
xn
y
x1
Uf
xn
y  f(x1,...,xn)
3
Applications of quantum search
The function f could be realized as a 3-CNF formula:
f x1 ,..., xn   x1  x3  x4   x2  x3  x5     x1  x5  xn 
Alternatively, the search could
be for a certificate for any
problem in NP
The resulting quantum
algorithms appear to be
quadratically more efficient
than the best classical
algorithms known
PSPACE
3-CNF-SAT
NP
co-NP
FACTORING
P
4
Prelude to Grover’s algorithm:
two reflections = a rotation
Consider two lines with intersection angle :
reflection 2
2

2
1
1
reflection 1
Net effect: rotation by angle 2, regardless of starting vector
5
Grover’s algorithm: description I
Basic operations used:
x1
xn
y
x1
Uf
x1
xn
y
xn
y  f(x1,...,xn)
x1
U0
H
Uf x− = (−1) f(x) x−
xn
y  [x = 0...0]
Hadamard
Implementation?
X
X
X
X
X
X
U0 x− = (−1) [x = 0...0]x−
H
H
H
6
Grover’s algorithm: description II
iteration 1
preliminary
iteration 2
...
0
0
−
H
Uf
reflection #1
H
U0
reflection #2
H
Uf
reflection #1
H
U0
H
reflection #2
1. construct state H 0...0−
2. repeat k times:
apply −HU0 HUf to state
3. measure state, to get x  {0,1}n, and check if
f (x) =1
(The setting of k will be determined later)
7
Grover’s algorithm: analysis I
Let
A = {x {0,1}n : f (x) = 1} and B = {x {0,1}n : f (x) = 0}
and N = 2n and
Let
a = |A|
and
b = |B|
interesting case: a ≪ N
and
Consider the space spanned by A and B
A  goal is to get close to this state
H0...0
B
8
Grover’s algorithm: analysis II
A
(
Algorithm: −HU0 HUf
)k H 0...0
H0...0
B
Observation:
Uf
is a reflection about B:
Uf A = −A
Question: what is −HU0 H ?
and
Uf B = B
Answer: a reflection about
H 0...0
Proof:
−HU0 H(H 0...0) = −HU0 0...0 = −H(−0...0) = H 0...0
−HU0 H(H 0...0)⊥ = −HU0 0...0⊥= −H 0...0⊥ = − (H 0...0)⊥
9
Grover’s algorithm: analysis III
A
(
Algorithm: −HU0 HUf
2
2
2
2

)k H 0...0
H0...0
B
Since −HU0 HUf is a composition of two reflections, it is a rotation by 2,
where sin() = a/N so  
When a = 1, we want
a/N
(2k+1)(1/N)  /2 , so k  (/4)N
More generally, it suffices to set k
 (/4)N/a
Question: what if a is not known in advance?
10
Unknown number of solutions
1 solution
2 solutions
3 solutions
6 solutions
100 solutions
success
probability
1
0 number of iterations
√N/2
4 solutions
success probability
very close to zero!
Choose a random k in the range to get success probability > 0.43
11
Optimality of
Grover’s algorithm
12
Optimality of Grover’s algorithm I
Theorem: any quantum search algorithm for f : {0,1}n → {0,1} must make
(2n ) queries to f (if f is used as a black-box)
Proof (of a slightly simplified version):
|x
Assume queries are of the form
(−1) f(x)|x
f
and that a k-query algorithm is of the form
|0...0
U0
f
U1
f
U2
f
U3
where U0, U1, U2, ..., Uk, are arbitrary unitary operations
f
Uk
13
Optimality of Grover’s algorithm II
Define fr : {0,1}n  {0,1} as fr (x) = 1 iff x = r
Consider
|0 U0
fr
U1
fr
U2
fr
U3
fr
Uk |ψr,k
I
U1
I
U2
I
U3
I
Uk |ψr,0
versus
|0 U0
We’ll show that, averaging over all r  {0,1}n, || |ψr,k − |ψr,0
||  2k / 2n
14
Note that
U1
I
fr
U3
fr
ki
I
U1
U2
fr
U3
fr
I
U2
…
Uk |ψr,k
i
I
U3
I
…
I
U2
Uk |ψr,i
…
U0
fr
…
|0
U1
…
U0
fr
…
…
|0
…
U0
…
|0
…
Optimality of Grover’s algorithm III
Uk |ψr,0
|ψr,k − |ψr,0 = (|ψr,k − |ψr,k1) + (|ψr,k1 − |ψr,k2) + ... + (|ψr,1 − |ψr,0)
which implies
|| |ψr,k − |ψr,0 ||  || |ψr,k − |ψr,k1 || + ... + || |ψr,1 − |ψr,0 ||
15
Optimality of Grover’s algorithm IV
Consider the difference between any two consecutive layers (i and i−1):
|0
same unitary
k−i
I
I
U0
U1
k−i+1
U2
U0
I
I
U1
|ψr,i
U3
fr
Uk
U3
fr
Uk |ψr,i 1
k−i+1
k−i
|0
fr
same unitary
U2
I
−
(top layer)
Therefore || |ψr,i
− |ψr,i-1
|| = |2i,r| (since only amplitude of |r negated)
Therefore || |ψr,k
− |ψr,0
|| 
16
Optimality of Grover’s algorithm V
Now, averaging over all r  {0,1}n,
(we just showed this)
(reordering sums)
(by Cauchy-Schwarz)
Therefore, for some r  {0,1}n, the number of queries k must be (2n ),
in order to distinguish fr from the all-zero function
This completes the proof
17