quantum computing mas 725 hartmut klauck ntu 19.3.2012

39
Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Upload: pauline-riley

Post on 03-Jan-2016

217 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Quantum ComputingMAS 725Hartmut KlauckNTU19.3.2012

Page 2: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Simon’s Problem

Given: Black box function f:{0,1}n!{0,1}n Promise: there is an s2{0,1}n with s0n

For all x: f(x)=f(x©s) For all x,y: x y©s ) f(x) f(y)

Find s !

Example: f(x)=2bx/2c Then for all k: f(2k)=f(2k+1); s=00 ... 01

Simon’s algorithm solve the problem in time/queries poly(n) Every classical randomized algorithm (even with errors) needs

(2n/2) queries to the black box

Page 3: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

The quantum algorithm

Start with|0ni|0ni Apply H­n to the first n qubits Apply Uf Measure qubits n+1,...,2n Result is some f(z) There are z, z©s with f(z)=f(z©s) Remaining state on the first n qubits is

(1/21/2 |zi + 1/21/2|z©si) |f(z)i Forget |f(z)i

Page 4: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

The quantum algorithm

State: 1/21/2 |zi + 1/21/2|z©si Every z2{0,1}n is equally likely to have been selected

by the measurement (f(z) fixes z and z©s) We really get a probability distribution on the above

states for a random z Measuring now would just give us a random z from

{0,1}n [f(z) is chosen randomly in measurement 1, then with prob. ½ we get: z, with prob. 1/2: z©s, resulting in a uniformly random z]

How can we get information about s? Apply H­n

Page 5: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

The quantum algorithm

State: 1/21/2 |zi + 1/21/2|z©si z uniformly random Apply H­n

Result: y y |yi with y=1/21/2 ¢1/2n/2 (-1)y¢z + 1/21/2¢1/2n/2(-1)y¢(z©s)

=1/2(n+1)/2 ¢­(-1)y¢z [1+(-1)y¢s]

y¢z=i yizi

Page 6: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

The quantum algorithm

y y |yi with y=1/2(n+1)/2 ¢­(-1)y¢z [1+(-1)y¢s] Case 1: y¢s odd ) y=0 Case 2: y¢s even ) y=§ 1/2(n-1)/2

Measure now[we are now independent of z]

Result: some y: yi si ´ 0 mod 2 Hence we get the following equation over Z2

yi si ´ 0 mod 2 For a random y

Page 7: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Postprocessing

Resulting equation yi si ´ 0 mod 2 All y with yi si ´ 0 mod 2 have the same probability Knowing this equation reduces the number of

candidates for s by 1/2

We iterate this: Repeat n-1 times Solve the resulting linear system

If we get n-1 linearly independent equations, then s is determined

Page 8: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Simon‘s Algorithmus

H|0ni

|0niU_f

n-1­times,­then­solve­the­system­of­equations

H

y(1),...,y(n-1)

Page 9: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Analysis

s is determined as soon as we have n-1 independent equations. Coefficients of equations are randomly y(j)1,...,y(j)n under the condition y(j)¢s=0 mod 2[i.e. from a subspace U of dim. n-1 in (Z2)n]

Probability that y(j+1) is linear independent from y(1),...,y(j): Vj=span[y(1),...,y(j)] has dim. j Prob, that a random y(j+1) from U is in Vj:

2j/2n-1

Total probability of all being independent: j=1,...,n-1 (1-2j-1/2n-1)= j=1,...,n-1 (1-1/2j)

Page 10: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Analysis

Total probability of all equations being independent:j=1,...,n-1 (1-1/2j)

This is at least1/2 ¢ (1-[j=2,...,n-1 1/2j])¸ 1/4[Use (1-a)(1-b)¸ 1-a-b für 0<a,b<1]

I.e. with probability at least 1/4 we find n-1 linear independent equations, and we can compute s

Use Gaussian elimination O(n3) or other methods O(n2.373)

Page 11: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Variation

Decision problem: With probability 1/2: s=0n

With prob. 1/2: s uniform from {0,1}n-{0n} Decide between the two cases

Page 12: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Lower bound

Consider any randomized algorithm that computes s, given oracle access to f

Fix some f=fs for every s If there is a randomized algorithm with T queries and success

probability p (both in the worst case), then there is a deterministic algorithm with T queries and success probability p for randomly chosen s

Let r2{0,1}m be the string of random bits used Es Er [Success for fs with random r]=p

) there is a fixed r with Es [Success fs with r]¸ p

Fix r ) determinististic algorithm

Page 13: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Lower bound

s is uniformly random from {0,1}n-{0n} Fix any f=fs Given a deterministic query algorithm, success probability

1/2 for random s Consider the situation when k queries have been asked Fixes queries/answers (xi,f(xi)) If there are xi,xj with f(xi)=f(xj), then algo. stops, success Otherwise: all f(xi) are different,

never xi©xj=s, number of pairs is Hence there are at least 2n-1- possible s s is uniformly random from the remaining s

Page 14: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Lower bound

There are still 2n-1- ¸ 2n-k2 posssible s s uniformly random among those Query xk+1 (may depend on previous queries and

answers) For every xk+1 there are k candidates s‘(1),...,s‘(k):

s‘(j)=xj©xk+1 for s Hence we find the real s with prob. · k/ (2n-k2)

[over choice of s]

Page 15: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Lower bound

Probability to find the real s · k/(2n-k2) Total success probability:

If T<2n/2/2 the success probability is too small

Page 16: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Variation

Decision problem: With probability 1/2: s=0n

with prob. 1/2: s uniform from {0,1}n-{0n} Algorithm decides between the two cases Analysis similar, with less than 2n/2/2 queries error

larger than 1/4

Page 17: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Summary

Simon‘s problem can be solved by a quantum algorithm with time O(n2.373) and O(n) queries with success probability 0.99

Every classical randomized algorithm with success probability 1/2 needs (2n/2) queries

Page 18: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Algorithms so far

Deutsch-Josza and Simon: DJ: f balanced or constant S: f has „Period“ s (over (Z2)n) First Hadamard, then Uf, then Hadamard and

measurement D-J: black box with output (-1)f(x)

S: standard black box

Page 19: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Order finding over ZN

Given numbers x, N, x<N Order r(x) of x in ZN:

min. r: xr =1 mod N „Period“ of the powers of x We will use a black box Ux,N that computes

Ux,N |ji|ki= |ji|xjk mod Nix and N have no common divisors

Quantum algorithm to find r(x) ? Note: we will not really need a black box, since

Ux,N can be computed easily

Page 20: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

But first….

We need to say what it means to have an efficient quantum algorithm

Don’t want to count queries to a black box, but just computation time (or space)

Efficient classical computation is captured by complexity classes like P or BPP

P : problems solvable by poly-time Turing machines BPP : problems solvable by poly-time randomized

Turing machines with bounded error The classes are believed to be the same

(derandomization)

Page 21: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Computing with circuits

Circuit: inputs x1,…,xn2{0,1}n

Gates g1,…,gm Gate: takes inputs or output of a previous gate, computes a

function {0,1}2{0,1} Gates form a directed acyclic graph Output gate gm Size: m (corresponds to sequential computation time) Circuit bases (allowed function for the gates):

AND, OR, NOT NAND All Boolean function with 2 inputs

Size changes only by a constant factor with the basis

Page 22: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Probabilistic circuits

Additional inputs r1,…,rm

For all inputs x1,…,xn : if r1,…,rm are uniform random bits, the correct result will be computed with probability 2/3

Page 23: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Circuit families

A circuit Cn computes on inputs with n bits Circuit family (Cn)n2 N

Uniformity condition: Cn can be computed in polynomial time from n (given in unary)

Without this condition circuit families can compute everything

Now we can define P,­BPP in terms of circuits Polynomial size and uniform

Equivalent to Turing machine definitions

Page 24: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Facts about circuits

Almost all function {0,1}n{0,1} need circuit size (2n/n) Established by a counting argument

This bound is tight for non-uniform circuits, i.e., every function f:{0,1}n{0,1} can be computed in size O(2n/n)

We don‘t know any explicit function that needs !(n) circuit size

Page 25: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Quantum circuits

n qubits initialized with the input (classical state) s qubits workspace At all times there is a global state on n+s qubitts Unitary operations (on 1, 2, or 3 qubits)

U1,…,UT; given together with choice of the qubits Applying operation Ui : take the tensor product with

the identity on the other qubits, multiply with the current state in the order: 1,...,T

One or more fixed qubits are measured in the end (standard basis)

Page 26: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Quantum circuits

Uniform families defined as before, but we need to restrict the set of allowed unitaries (since the set of all unitaries on a single qubit is already not even countable)

Class BQP: functions computable by uniform families of polynomial size quantum circuits with error < 1/3

EQP: same, but no error allowed It is possible to show that these classes coincide with

definitions for them based on quantum Turing machines

Page 27: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Relationships between complexity classes P­µ BPP­µ BQP µ PSPACE

P­µ EQP­µ BQP

All inclusions except the first and the last need to be proved Conclusion: BQP­­does not contain uncomputable functions Widely believed that P=BPP On the other hand the factorization problem is BQP, not known to

be in BPP Generally considered (very) unlikely BQP=PSPACE, or NPµBQP,

i.e. not likely that we can solve NP­-complete problems

Page 28: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Simulating quantum circuits

Theorem:Every quantum circuit with m gates and n+s can be simulated by a deterministic circuit of size m¢2O(n+s)

This implies that at most exponential speedups are possible

Uniformity is preseved by the simulation Idea: store the global quantum state on n+s qubits

explicitly (with limited precision), apply the m unitary operations one after another by performing matrix multiplication (with limited precision)

Page 29: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

P vs. BQP

Simulation of classical circuits Problem:

Quantum circuits are reversible (up to the final measurement)

„Fan-Out“ is not implementable due to no-cloning (i.e., using a computation result several time is not directly possible)

Solution: Simulate a classical circuit first by a classical reversible circuit

Page 30: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Simulation

Toffolli Gate:maps a,b,c to a,b, (aÆb)©c

The Toffolli gate is reversible [given a,b,d can compute c=(aÆb)©d ]

The gate is universal [AND: set c=0, NOT: set c=1, b=1]

Fan-out:To copy a set b=1, c=0 (copies classical bits)

Classical reversible circuits are also quantum circuits Simulation of probabilistic circuits is immediate, hence

BPP µ BQP Measure 1/21/2 ( |0ki+|1ki­) to get k copies of a random bit

Page 31: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Which classes of unitaries are universal? We can use one of the following

CNOT and every unitary gate on 1 Qubit CNOT, Hadamard, plus O(1) rotation gates (approximately

universal) Toffoli Gate and Hadamard gates (approximately universal)

We can approximate any circuit with 2 qubit gates to any precision using only gates from one of the above sets with limited overhead

Page 32: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Approximate computation

What is the influence of error?

Page 33: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Limited precision

Suppose a quantum circuit computes |Ti=UT UT-1 U1 |xi |0…0i

Ui unitary Instead of UT apply VT

errors due to implementation while simulating the circuit with limited precision

Result is VT|T-1i=|Ti+|ETi, where |ETi=(VT-UT) |T-1i (not normalized)

Page 34: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Limited precision

Result VT|T-1i=|Ti+|ETi, where |ETi=(VT-UT) |T-1i

Use Vi instead of Ui for all i: |1i=V1|0i=|1i+|E1i |2i=V2|1i=|2i+|E2i+V2|E1i |Ti=VT|T-1i

=|Ti­+|ETi­+VT|ET-1i­+­+ VTV2 |E1i Hence k­|Ti­-­|Ti k­­­­­­· i=1…T k­|Eii k­=i=1…T k­(Vi-Ui) |i-1i k

Page 35: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Approximating unitaries

Let U be an arbitrary unitary on n qubits And U‘ be any operator What is the approximation error? Spectral norm kUk=maxx:­kxk=1 k­U x k Approximation error: k­U – U‘ k

Page 36: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Total approximation error

i=1…T k­(Vi-Ui) |i-1i k­· i=1…T k­(Vi-Ui) k If kVi-Uik­· /T, then the total distance is at most k­|Ti­-­|Ti k­·­ implies what error? Measure all n+s qubits in the standard basis Measurement result a appears with probability

P(a)=|h a|Ti|2 resp. Q(a)=|h a|Ti|2

Page 37: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Total approximation error

Measurement result a appears with probabilityP(a)=|h a|Ti|2 resp. Q(a)=|h a|Ti|2

Hence the total error is at most a|P(a)-Q(a)|· 2 k­|Ti­-­|Ti k­·­2

Page 38: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Conclusion

For polynomial time computations we need to apply unitaries with precision 1/poly(n) in the spectral norm

In particular: quantum computing is not an analogue model of computation requiring infinite precision

Page 39: Quantum Computing MAS 725 Hartmut Klauck NTU 19.3.2012

Efficiency of approximating

Number of gates from a finite set we need to simulate any 1-qubit gate? Depends on the required precision

[Solovay, Kitaev] show -approximation with log2(1/) gates

If poly(n) gates have to be approximated with error 1/poly(n) we only need an overhead factor log2(n)