34
1 Introduction to Introduction to Quantum Information Processing Quantum Information Processing CS 467 / CS 667 CS 467 / CS 667 Phys 667 / Phys 767 Phys 667 / Phys 767 C&O 481 / C&O 681 C&O 481 / C&O 681 Richard Cleve DC 2117 [email protected] Lecture 7 (2008)

Richard Cleve DC 2117 [email protected]

  • Upload
    risa

  • View
    32

  • Download
    0

Embed Size (px)

DESCRIPTION

Introduction to Quantum Information Processing CS 467 / CS 667 Phys 667 / Phys 767 C&O 481 / C&O 681. Richard Cleve DC 2117 [email protected]. Lecture 7 (2008). Definition of the quantum Fourier transform (QFT). Quantum Fourier transform. - PowerPoint PPT Presentation

Citation preview

Page 1: Richard Cleve  DC 2117 cleve@cs.uwaterloo

1

Introduction to Introduction to Quantum Information ProcessingQuantum Information Processing

CS 467 / CS 667CS 467 / CS 667Phys 667 / Phys 767Phys 667 / Phys 767C&O 481 / C&O 681C&O 481 / C&O 681

Richard Cleve DC [email protected]

Lecture 7 (2008)

Page 2: Richard Cleve  DC 2117 cleve@cs.uwaterloo

2

Definition of the quantum Fourier transform (QFT)

Page 3: Richard Cleve  DC 2117 cleve@cs.uwaterloo

3

Quantum Fourier transformQuantum Fourier transform

2113121

13963

12642

132

1

1

1

1

11111

1

)()()(

)(

)(

NNNN

N

N

N

ωωωω

ωωωω

ωωωω

ωωωω

NNF

where = e2i/N (for n qubits, N = 2n)

This is unitary and F2 = H, the Hadamard transform

This generalization of H is an important component of several interesting quantum algorithms …

Page 4: Richard Cleve  DC 2117 cleve@cs.uwaterloo

4

Discrete log problem

Page 5: Richard Cleve  DC 2117 cleve@cs.uwaterloo

5

Discrete logarithm problem (DLP)Discrete logarithm problem (DLP)Input: p (prime), g (generator of Z*p), a Z*p

Output: r Zp1 such that g r mod p = a

Example: p = 7, Z*7 = {1, 2, 3, 4, 5, 6} = {30, 32, 31, 34, 35, 33} (hence 3 is a generator of Z*7)

For a = 6, since 33 = 6, the output should be r = 3

Note: No efficient classical algorithm for DLP is known (and cryptosystems exist whose security is predicated on the computational difficulty of DLP)

Efficient quantum algorithm for DLP? (Hint: it can be made to look like Simon’s problem!)

Page 6: Richard Cleve  DC 2117 cleve@cs.uwaterloo

6

Quantum algorithm for DLP (1)Quantum algorithm for DLP (1)Clever idea (of Shor): define f : Zp1 Zp1 Z*p as f (x1 , x2) = g

x1 ax2 mod p (can be efficiently computed)

We know a = g r for some r, so f (x1 , x2) = g x1 r

x2 mod p

When is f (x1 , x2) = f (y1, y2) ?

Thus, f (x1 , x2) = f (y1, y2) iff x1 rx2 y1 r y2 (mod p 1)

iff (x1, x2)(1, r) (y1, y2)(1, r) (mod p 1)

iff ((x1, x2) (y1, y2))(1, r) 0 (mod p 1)

iff (x1, x2) (y1, y2) k (r, 1) (mod p 1)

Zp1 Zp1

(1, r)

(r, 1)

Recall Simon’s: f(x) = f(y) iff xy = k r (mod 2)

Page 7: Richard Cleve  DC 2117 cleve@cs.uwaterloo

7

Quantum algorithm for DLP (2)Quantum algorithm for DLP (2)f : Zp1 Zp1 Z*p defined as f (x1 , x2) = g

x1 ax2 mod p

f (x1 , x2) = f (y1, y2) iff (x1 , x2) (y1, y2) k (r, 1) (mod p 1)

Recall Simon’s: f(x) = f(y) iff xy = k r (mod 2)

fF

0

0F0

0

F†

F† result is a random (s , t) such that

(s , t)(r, 1) 0 (mod p 1)

if gcd(s, p 1) = 1 then r can be

computed as r = ts1 mod p 1

Why?

Why?

Details need to be filled in, but this is a sketch of how to efficiently solve DLP on a quantum computer

Page 8: Richard Cleve  DC 2117 cleve@cs.uwaterloo

8

Introduction to Introduction to Quantum Information ProcessingQuantum Information Processing

CS 467 / CS 667CS 467 / CS 667Phys 667 / Phys 767Phys 667 / Phys 767C&O 481 / C&O 681C&O 481 / C&O 681

Richard Cleve DC [email protected]

Lecture 8 (2008)

Page 9: Richard Cleve  DC 2117 cleve@cs.uwaterloo

9

Computing the QFT for N = 2n

Page 10: Richard Cleve  DC 2117 cleve@cs.uwaterloo

10

Computing the QFT for Computing the QFT for N = 2n (1) (1)

H

4

8 4

816 4

32 16 8 4

H

H

H

H

11

11

2

1

mπie /2000

0100

0010

0001

Hm

Quantum circuit for F32:

Gates:

For F2n costs O(n2) gates

rev

erse

ord

er

Page 11: Richard Cleve  DC 2117 cleve@cs.uwaterloo

11

Computing the QFT for Computing the QFT for N = 2n (2) (2)

One way on seeing why this circuit works is to first note that

F2na1a2…an

= (0 + e2i(0.an)1)…(0 + e2i(0.a2…an)1) (0 + e2i(0.a1a2…an)1)

It can then be checked that the circuit produces these states (with qubits in reverse order) for all computational basis states a1a2…an

Exercise: (a) prove the above equation from the definition of the QFT; (b) confirm that the circuit produces these states

Page 12: Richard Cleve  DC 2117 cleve@cs.uwaterloo

12

ContentsContents

Loose ends in the

discrete log algorithm

Page 13: Richard Cleve  DC 2117 cleve@cs.uwaterloo

13

Quantum algorithm for DLP (3)Quantum algorithm for DLP (3)Input: p (n-bit prime), g (generator of Z*p), a Z*p

Output: r Zp1 such that g r mod p = a

Example: p = 7, Z*7 = {1, 2, 3, 4, 5, 6} = {30, 32, 31, 34, 35, 33} (hence 3 is a generator of Z*7)

Define f : Zp1 Zp1 Z*p as f (x , y) = gx ay mod p

Then f (x1 , x2) = f (y1, y2) iff (x1 , x2) (y1, y2) k (r, 1) (mod p 1)

fF

0

0F0

0

F†

F†

produces a random (s , t) such that

(s , t)(r, 1) 0 (mod p 1)

sr + t 0 (mod p 1)

(for some k)

Page 14: Richard Cleve  DC 2117 cleve@cs.uwaterloo

14

Quantum algorithm for DLP (4)Quantum algorithm for DLP (4)

fF

0

0F0

0

F†

F† produces a random (s , t) such that

sr + t 0 (mod p 1)

If gcd(s, p 1) = 1 then r can be computed as r = ts1 mod p 1

The probability that this occurs is (p 1)/ (p 1), where is Euler’s totient function

It is known that (N) = (N/ loglogN), which implies that the

above probability is at least (1/ loglog p) = (1/ log n)

Therefore, O( log n) repetitions are sufficient

… this is not bad—but things are actually better than that …

Page 15: Richard Cleve  DC 2117 cleve@cs.uwaterloo

15

Quantum algorithm for DLP (5)Quantum algorithm for DLP (5)We obtain a random (s , t) such that sr + t 0 (mod p 1)

Therefore, a constant number of repetitions suffices

Note that each s {0,…, p 2} occurs with equal probability

Therefore, if we run the algorithm twice: we obtain two independent samples s1, s2 {0,…,p 2}

Question: what is the probability that gcd(s1, s2) = 1?

prime

22prime

1 5401

1PrPr1qq

.q

s|qs|q

If it happens that gcd(s1, s2) = 1 then (by Euclid) there exist

integers a and b such that as1 + bs2 = 1 r = (at1 + bt2)

Page 16: Richard Cleve  DC 2117 cleve@cs.uwaterloo

16

Quantum algorithm for DLP (6)Quantum algorithm for DLP (6)Another loose end: our algorithm uses QFTs modulo p 1,

whereas we have only seen how to compute QFTs modulo 2n

A variation of our QFT algorithm would work for moduli of the form 3n, and, more generally, all smooth numbers (those that are products of “small” primes)

2113121

13963

12642

132

ωωωω1

ωωωω1

ωωωω1

ωωωω1

11111

1

)N()N()N(N

)N(

)N(

N

N

H4

8 4

816 4

32 16 8 4

H

HH

H

Page 17: Richard Cleve  DC 2117 cleve@cs.uwaterloo

17

Quantum algorithm for DLP (7)Quantum algorithm for DLP (7)

Shor just used a modulus close to p 1, and, using careful error-analysis, showed that this was good enough ...

In fact, for the case where p 1 is smooth, there already exist polynomial-time classical algorithms for discrete log!

It’s only the case where p 1 is not smooth that is interesting

There are also ways of attaining good approximations of QFTs for arbitrary moduli—which we will see later on (so this loose end is not yet resolved)

Page 18: Richard Cleve  DC 2117 cleve@cs.uwaterloo

18

On simulating black boxes

Page 19: Richard Cleve  DC 2117 cleve@cs.uwaterloo

19

How How notnot to simulate a black box to simulate a black box

Given an explicit function, such as f (x) = g x1 ax2 mod p, over

some finite domain, simulate f-queries over that domain

Easy to compute mapping xy00...0 xyf

(x)g(x), where the third register is “work space” with accumulated “garbage” (e.g., two such bits arise when a Toffoli gate is used to simulate an AND gate)

If f is queried in superposition then the resulting state can be

x x xyf (x)g(x) can we just discard the third register?No ... there could be entanglement ...

This works fine as long as f is not queried in superposition

Page 20: Richard Cleve  DC 2117 cleve@cs.uwaterloo

20

How How toto simulate a black box simulate a black boxSimulate the mapping xy00...0 xyf (x)00...0, (i.e., clean up the “garbage”)

To do this, use an additional register and:

1. compute xy00...000...0 xyf (x)g(x) (ignoring the 2nd register in this step)

2. compute xyf (x)g(x) xyf (x)f (x)g(x) (using CNOT gates between the 2nd and 3rd registers)

3. compute xyf (x)f (x)g(x) xyf

(x)00...000...0 (by reversing the procedure in step 1)

Total cost: around twice the classical cost of computing f, plus n auxiliary gates

Page 21: Richard Cleve  DC 2117 cleve@cs.uwaterloo

21

The “hidden subgroup” framework

Page 22: Richard Cleve  DC 2117 cleve@cs.uwaterloo

22

Hidden subgroup problem (1)Hidden subgroup problem (1)Let G be a known group and H be an unknown subgroup of G

Let f : G T have the property f (x) = f (y) iff x y H (i.e., x and y are in the same right coset of H )

Problem: given a black-box for computing f, determine H

Example 1: G = (Z2)n (the additive group) and H = {0,r}

Example 2: G = (Zp1)2 and

H = {(0,0), (r,1), (2r,2), …, (( p2)r, p2)}

Example 3: G = Z and H = rZ (Shor’s factoring algorithm can be viewed this way)

Page 23: Richard Cleve  DC 2117 cleve@cs.uwaterloo

23

Hidden subgroup problem (2)Hidden subgroup problem (2)Example 4: G = Sn

(the symmetric group, consisting

of all permutations on n objects—which is not abelian)

and H is any subgroup of G

A quantum algorithm for this instance of HSP would lead to an efficient quantum algorithm for the graph isomorphism problem …

… yet no efficient quantum has been found for this instance of HSP, despite significant effort by many people

Page 24: Richard Cleve  DC 2117 cleve@cs.uwaterloo

24

Introduction to Introduction to Quantum Information ProcessingQuantum Information Processing

CS 467 / CS 667CS 467 / CS 667Phys 667 / Phys 767Phys 667 / Phys 767C&O 481 / C&O 681C&O 481 / C&O 681

Richard Cleve DC [email protected]

Lecture 9 (2008)

Page 25: Richard Cleve  DC 2117 cleve@cs.uwaterloo

25

Eigenvalue estimation problem

(a.k.a. phase estimation)Note: this is a major component of Shor’s factoring algorithm

Page 26: Richard Cleve  DC 2117 cleve@cs.uwaterloo

26

A simplified exampleA simplified exampleU is an unknown unitary operation on n qubits

is an eigenvector of U, with eigenvalue = +1 or –1

Output: the eigenvalue

Input: a black-box for a controlled-U

U n qubitsand a copy of the state

Exercise: solve this making a single query to the controlled-U

Page 27: Richard Cleve  DC 2117 cleve@cs.uwaterloo

27

GeneralizedGeneralized controlled- controlled-UU gates gates

U

I

0

0

U

a

b

a

U ab

a1

U

:am

a1:

am

b1:

bnU

a1 am b

12

2

000

000

000

000

m

U

U

U

I

Example: 11010101 1101U 11010101

Page 28: Richard Cleve  DC 2117 cleve@cs.uwaterloo

28

Eigenvalue estimation problemEigenvalue estimation problemU is a unitary operation on n qubits

is an eigenvector of U, with eigenvalue e2i

(0 ≤ < 1)

Output: (m-bit approximation)

Input: black-box for

U n qubits

m qubitsand a copy of

Page 29: Richard Cleve  DC 2117 cleve@cs.uwaterloo

29

Algorithm for eigenvalue estimation (1)Algorithm for eigenvalue estimation (1)

U

HHH

000

Starts off as:

(0 + 1) (0 + 1) … (0 + 1) = (000 + 001 + 010 + 011 + … + 111) = (0 + 1 + 2 + 3 + … + 2m 1)

00 … 0

(0 + e2i1 + (e2i)22 + (e2i)33 + … + (e2i)2m12m1)

ab aU ab

12

0

2

m

x

xi xe

Page 30: Richard Cleve  DC 2117 cleve@cs.uwaterloo

30

Algorithm for eigenvalue estimation (2)Algorithm for eigenvalue estimation (2)

U

HHH

000

12

0

2

m

x

xi xe

2)1()1(3)1(2)1(

)1(3963

)1(2642

)1(321

1

1

1

1

11111

11

MMMM

M

M

M

MMF

When = 0.a1a2…am :

12

0

221

m

x

ximM xeaaaF

Therefore, applying the inverse of FM

yields the digits of

Page 31: Richard Cleve  DC 2117 cleve@cs.uwaterloo

31

Algorithm for eigenvalue estimation (3)Algorithm for eigenvalue estimation (3)

If = 0.a1a2…am then the aabove procedure yields a1a2…am (from which can be deduced exactly)

What if is not of this nice form?

Example: = ⅓ = 0.0101010101010101…

U

HHH

000

FM

a1a2…am–1

Page 32: Richard Cleve  DC 2117 cleve@cs.uwaterloo

32

Algorithm for eigenvalue estimation (4)Algorithm for eigenvalue estimation (4)What if is not of the nice form = 0.a1a2…am?

Example: = ⅓ = 0.0101010101010101…

Let’s calculate what the previously-described procedure does:

12

0

21m

x

xiM xeF

12

0

12

0

222

2

1m m

m

y x

xiyixm

yee

12

0

12

0

22

22

2

1m m

mm

y x

xa

iyix

myee

Let a / 2m = 0.a1a2…am be an m-bit approximation of , in

the sense that = a / 2m + , where || ≤ 1 / 2m+1

12

0

12

0

222

2

1m m

m

y x

xixyaim

yee What is the amplitude of a1a2…am ?

Page 33: Richard Cleve  DC 2117 cleve@cs.uwaterloo

33

Algorithm for eigenvalue estimation (5)Algorithm for eigenvalue estimation (5)

geometricseries!

The amplitude of y , for y = a is

12

0

2

2

1m

x

xim

e

12

0

12

0

222

2

1m m

m

y x

xixyaim

yee State is:

i

i

m e

em

2

22

1

1

2

1

Numerator:1

e2i

lower bounded by 2i2m(2/) > 42m

Denominator:1

e2i2m

upper bounded by 2

Therefore, the absolute value of the amplitude of y is at least

the quotient of (1/2m)(numerator/denominator), which is 2/

Page 34: Richard Cleve  DC 2117 cleve@cs.uwaterloo

34

Algorithm for eigenvalue estimation (6)Algorithm for eigenvalue estimation (6)

Therefore, the probability of measuring an m-bit approximation

of is always at least 4/2 0.4

For example, when = ⅓ = 0.01010101010101… , the outcome probabilities look roughly like this:

4 2

0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1000 1101 1110 1111