new methods for quantum algorithms...new methods for quantum algorithms andris ambainis university...
TRANSCRIPT
New methods for quantum
algorithms
Andris Ambainis
University of Latvia
Datorzinātnes lietojumi un tās saiknes ar kvantu fiziku
AQIS’2011, August 25, 2011
Shor’s algorithm [1994]
Factoring: given N=pq, find p and q.
Best algorithm - 2O(n1/3), n – number of digits.
Quantum algorithm - O(n3) [Shor, 94].
Cryptosystems based on hardness of
factoring/discrete log become insecure.
Grover's search [1996]
Find i such that xi=1.
Queries: ask i, get xi.
Classically, N queries required.
Quantum: O(N) queries [Grover, 96].
0 1 0 0 ...
x1 x2 xn x3 ...
Speeds up any search problem.
Element distinctness [A, 2004]
Numbers x1, x2, ..., xN.
Determine if two of them are equal.
Classically: N queries.
Quantum: O(N2/3).
7 9 2 1 ...
x1 x2 xN x3
Evaluating logic formulas [Farhi, et
al., 2007, Reichardt, 2011]
AND
OR
AND x1 x2
OR
x3 x4
AND
x5 x6
Formula of size N.
O(√N) quantum
algorithms.
From algorithms to methods
Element distinctness:
Search by a quantum walk (quantization of Markov chains);
Formula evaluation:
Span programs;
Mathematical structures
Quantum query model
Input data x1, ..., xN given by a black box
that answers queries;
Q |i |i if xi=0
-|i if ja xi=1
Complexity = number of queries.
Examples: Grover, element distinctness, etc.
Quantum algorithm
Start
state
Q U1 Q ...
End
state
Part 1
Search by quantum walk
Generic search problem
Finite search space.
Some states marked.
Task: find a marked
state.
1
2 3
4 Solution: random walk
on search space.
Search by a random walk
Start in random state;
Perform a random
walk, until finding a
marked state.
T – expected number
of steps.
1
2 3
4
Szegedy, 2004: Quantum walk detects
a marked state in O(√T) steps.
In more detail...
Random walk:
T walking steps to find a marked state;
Time complexity: S+TW:
S – time to generate a random starting state;
W – time to perform one walking step;
Szegedy, 2004: Quantum walk,
O(S+√TW ) steps.
Matrix multiplication [Buhrman,
Špalek, 05]
A, B, C – n*n matrices.
Finding C=AB: O(n2.37…) steps;
Given A, B and C, we can test AB=C in:
O(n2) steps by a probabilistic algorithm;
O(n5/3) steps by a quantum algorithm.
Triangle finding [Magniez, Santha,
Szegedy, 05]
Graph G with n vertices.
n2 variables xij; xij=1 if there
is an edge (i, j).
Does G contain a triangle?
Classically: O(n2).
Quantum: O(n1.3).
Forbidden subgraph properties
[Childs, Kothari, 2011]
P=“G contains one of several
subgraphs H1, ..., Hk”.
P – sparse if any G not
containing H1, ..., Hk has O(n)
edges
Any sparse P can be decided
in o(n3/2) steps.
Search vs. finding
What can we do in time O(S+√TW )?
[Szegedy, 2004] Quantum algorithm for
detecting whether a marked state exists.
*Assumes knowledge of p, ppmarked,
pmarked – fraction of marked states.
[Krovi et. al., 2010] Quantum algorithm for
finding a marked state*.
Part 2
Quantum algorithms for formula
evaluation
Evaluating AND-OR trees
Variables xi accessed by queries to a black box:
Input i;
Black box outputs xi.
Quantum case:
Evaluate T with the smallest number of queries.
OR
AND AND
x1 x2 x3 x4
i
x
i
i
i iaia i)1(
Results (up to 2007)
Full binary tree of depth d.
N=2d leaves.
Deterministic: (N).
Randomized [SW,S]:
(N0.753…).
Quantum?
Easy q. lower bound:
(N).
OR
AND AND
x1 x2 x3 x4
New results
[Farhi, Gutman, Goldstone, 2007]:O(N) time
algorithm for evaluating full binary trees in
Hamiltonian query model.
[A, Childs, Reichardt, Spalek, Zhang, 2007]:
O(N1/2+o(1)) time algorithm for evaluating any
formulas in the usual query model.
[Reichardt, 2011] O(√N) query algorithm.
0 1 1 0
Finite “tail” in one direction
…
Augmented tree
…
a -a -a a
Starting state:
Hamiltonian H,
H – adjacency matrix
0 0
0 0
... ...
Farhi et al. algorithm
What happens?
If T=0, the state stays almost unchanged.
If T=1, the state “scatters” into the tree.
Run for O(N) time, check if the state |Ψ is close to the starting state |Ψstart.
When is the state unchanged?
H – forces acting on the system.
(State | unchanged) H|=0.
…
H – adjacency matrix
a1 a2 a3
H| = 0 for each i: 0),(
edgeji
ja
What does H|=0 mean?
Example
OR
AND AND
1
0
1
0
Formula Augmented tree
H| = 0 state
… a -a -a a 0 0
0
-a -a 0
0
0
0
0
OR
AND AND
1
0
1
0
Such state can be constructed whenever T=0.
General property
… a -a -a a 0 0
0
-a -a 0
0
0
0
0
OR
AND AND
1
0
1
0
Leaves with non-zero ai force T=0.
T=1 case
… a -a -a a 0 0
0
-a -a 0
0
0
0
0
AND
OR OR
1 1 1
0
No | with H|=0.
0
Cannot place non-zero value here
Span programs [Reichardt, Špalek, 2008]
Span program with witness size T
O(√T) query quantum algorithm
Logic formula of size T
Far-reaching generalization of formula evaluation
Span programs [Karchmer, Wigderson, 1993]
Target vector v.
Input x1, ..., xN vectors v1, ..., vM.
Output F(x1, ..., xN) = 1 if there exist
vi1,vi2, ..., vik:
v=vi1+vi2+...+vik.
Span programs [Reichardt, 2011]
Span program with witness size T
O(√T) query quantum algorithm
Adversary bound [A, 2000, Hoyer, Lee, Špalek,
2007]
Boolean function f(x1, ..., xN);
Inputs x = (x1, ..., xN);
Matrix A: A[x, y]≠0 only if f(x) ≠ f(y)
Theorem Computing f requires
quantum queries
Span programs [Reichardt, 2009]
Optimal adversary bound
Semidefinite program (SDP)
Dual SDP
Optimal span program
Span programs [Reichardt, 2011]
Span program with witness size T
O(√T) query quantum algorithm
What can we do with
span programs?
Example
MAJ(x1, x2, x3 , x4)=1 if at least 2 xi are equal
to 1.
Formula size: 8.
Span program: 6.
Iterated thresholds
MAJ
x1 x2 x3 x4
MAJ
x5 x6 x7 x8
MAJ MAJ
... ...
MAJ
d levels – formula of size 8d, span program 6d.
O(6d) quantum algorithm
Singularity testing
Matrix A;
Promise A is singular or all singular values of A
are at least min.
Task: distinguish between the two cases.
Singularity testing
1, 2, ..., N - singular values of A.
Theorem [Belovs, 2011] Quantum algorithm for
testing singularity in time where
av
NTO
~
N
i
iavN 1
2
min
2,max
1
T – time to implement A as a Hamiltonian
Triangle finding
Graph G with n vertices.
Does G contain a triangle?
[Belovs, 2011]: O(n1.29...).