quantum computing mas 725 hartmut klauck ntu 26.3.2012

27
Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Upload: horace-casey

Post on 13-Jan-2016

218 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum ComputingMAS 725Hartmut KlauckNTU26.3.2012

Page 2: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Order finding over ZN

We are given x, N, x<N Order r(x) of x in ZN:

min. r0: xr =1 mod N „Period“ of the powers x

Page 3: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Order finding over ZN

Is there a quantum algorithm to find r(x)? Shor‘s algorithm finds r(x) in time poly(log N) trivial approach: compute xi for i=1,...,r(x)

• this is inefficient, could be that r(x)=N-1

Page 4: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Application

Factorization problem: Given a natural number N, find some nontrivial prime factor (or even all of them)

Factorization can be reduced to order finding!• Purely classical reduction

Page 5: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s algorithm

We follow the general outline of Simon‘s algorithm Start with Hadamard transform, query the black box But then we need another transformation, the

quantum Fourier transform

Page 6: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Fourier Transform

Fourier transform: g is a function ZL ! C

[or a vector with L entries]

Let w=e2 i/L . Then the Fourier transform is a linear map with matrix FTL(i,j)=wij; 0· i,j· L-1

The trivial algorithm to compute the Fourier transform takes time O(L2)

Fast Fourier Transform [FFT] takes times O(L log L)

Page 7: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum Fourier Transform

Set L=2n. Consider the state |i=j=0,...,L-1 j |ji . The Fourier transform of |i is

|i =j=0,...,L-1 j |ji, with

This is just the Fourier transform on the superposition Also called QFT Can we implement the QFT efficiently? Efficient means here:

polynomial in n=log L

Page 8: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum Fourier Transform

Let L=2n. Consider |i=j=0,...,L-1 j |ji Write j=j1 jn; j = j12n-1 ++jn20

Set 0.jt jt+1 ... jn = jt/2++jn/2n-t+1

QFT has the following product representation: |j1...jni maps to

1/2n/2 ¢ t=n,...,1 (|0i+ e2i 0. jt...jn |1i)

=1/2n/2 ¢ t=1,...,n (|0i+ e2ij/2t |1i)

Page 9: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum Fourier Transform

|j1...jni is mapped to 1/2n/2 ¢ t=n,...,1 (|0i+ e2i 0. jt... jn |1i)

Let Rk be the following gate/unitary operator

Apply H to j1. Result: 1/21/2 ¢ (|0i+ e2i 0. j1 |1i) |j2,...,jni Now apply the Rt gate controlled by jt for t=2,...,n to the first

qubit. Result: 1/21/2 ¢ (|0i+ e2i 0. j1,...,j

n |1i) |j2,...,jni

First qubit is now correct (corresponds to last desired qubit)

Page 10: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum Fourier Transform

This is the circuit for QFT (up to changing the order of qubits)Number of gates: n+(n-1)++1=O(n2)=O(log2 L)

Page 11: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Quantum Fourier Transform

Caveat: The result of the QFT is a superposition, there is no exponential speedup of computing the Fourier transform in the classical sense (computing the whole vector)

Page 12: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Properties of the QFT

Computes in time O(n2), ie. can als be approximated by standard gates quickly

QFT is unitary Set w=e2i/L, then FT-1

L(i,j)=w-ij;0· i,j· L-1

Translation invariance: Let QFT j=0,...,L-1 j |ji = j=0,...,L-1 j |ji

Tk: |ji |j+k mod Li. QFT Tk j=0,...,L-1 j |ji= QFT j=0,...,L-1 j |j+k mod Li

= j=0,...L-1 e2 ijk/L j |ji

Page 13: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Period finding

Function f: ZL!ZN given as black boxPromise: there is a r<N: f(i)=f(i+r) for all i2ZL

i j+kr ) f(i)f(j) Find r Try to solve this for arbitrary f Black box:

Uf: |ji |yi |ji |f(j) yi; j2ZL; f(j)y 2 ZN

Note that Order finding is an instance of Period finding with f(i)=xi

Page 14: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

log L+log N work space log L qubits in |0i ; 02ZL

log N qubits in |1i; 12ZN

Apply Hadamard on the first register Apply Uf Result:

Measure second register Result:

Page 15: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Result:

0 · j0 · r-1; L-r · j0+(A-1)r · L-1 A-1 < L/r < A+1

Page 16: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Result:

Now apply QFT Result:

i.e. the probability of k is independent of j0 (translation invariance)

Page 17: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Result:

Measurement now: Probability of k is

Assumption : r is a divisor of L, i.e. A=L/r, then

Page 18: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Assumption : r is a divisor of L, i.e. A=L/r, then

If A is a divisor of k, then =1/r If A is no divisor of k, then = 0

(because there are r values k that are multiples of A, each contributing probability 1/r)

I.e. we receive a multiple of A=L/r, say, cL/r with 0· c· r-1 With high probability: c and L/r have no common divisor Then gcd(cL/r,L)=L/r, L is known, hence we learn r.

Page 19: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

In general: the probability of k is

„favorizes“ values of k with kr/L close to an integer Geometric sum

with k=2kr (mod L)/ L

Page 20: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

with k=2kr (mod L))/ L There are exactly r values k2ZL with

-r/2· kr (mod L) · r/2 For those also - r/L· k· r/L

i.e. with 0· j· A-1<L/r the angles jk all lie in the same halfspace ) constructive interference!

Call such a k good

Page 21: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Some bounds: |1-eik|· |k|

[direct distance „1“ to „eik“ is smaller than the length of the arc] |1-eiAk|¸ 2A|k|/, if A|k|·

Set dist(0,)=|1-ei|,then dist(0,)/||¸ dist(0,)/=2/

A < (L/r)+1,hence Ak · A r/L < (1+r/L) use that kr· r/2 for a good k

Page 22: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

|1-eik|· |k| ; |1-eiAk|¸ 2A|k|/, if A|k|·

Ak · A r/L < (1+r/L)

Page 23: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

Each of the r good values of k has probability close to 1/r, hence with constant probability we get a k with-r/2· kr (mod L) · r/2 [Success]

|kr-cL|· r/2 for some c Then:|k/L-c/r|· 1/(2L), i.e. k/L is approximation of c/r We know k and L. Consider k/L as rational number (reduced). c is uniformly random from 0,...,r-1 c and r have no common divisor with probability at least 1/log r Then: computing c/r (as a rational number in reduced form) gives us also r Choose L large enough to get a good approximation

Page 24: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Shor‘s Algorithm

With constant probability we get k with |k/L-c/r|· 1/(2L) With probability 1/log r > 1/log L we have gcd(c,r)=1 Let r<N, L=N2

c/r is a rational number with denominator <N Any two such numbers are not closer than 1/N2=1/L > 1/(2L) The interval contains only one rational number c/r with

denominator < N Find the rational number with denominator < N that is close to

k/L Use the continued fractions algorithm to do that

Page 25: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Continued fractions

The continued fractions algorithm computed for a real its representation as continued fraction

If |c/r-|· 1/(2r2), then one of the steps computes the pair c,r , after at mostO(t3) Operations for t-bit numbers

Page 26: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Total running time/success probability k is good with constant probability With probability 1/log N also c is good (i.e. no common divisor

with r) Need to repeat only O(log N) times

For order finding in ZN choose L=N2,i.e. 2 log N +log N qubits are used

Fourier transform in O(log2 L) Continued fractions finds r from k/L in time O(log3 L) Can check r for correctness using the black box

Total time is O(log4 N), can be reduced to O(log3 N)

Page 27: Quantum Computing MAS 725 Hartmut Klauck NTU 26.3.2012

Continued fractions

Given: real Approximate by

Take integer part as a0, invert remaining number, iterate Theorem: |p/q-|· 1/(2q2), then p/q appears after at most

O(log (p+q)) steps