Unformatted text preview: f such a function with n = 3 is 001 if x = 000 or 011 010 if x = 001 or 010
f ( x) = 100 if x = 111 or 100 111 if x = 110 or 101 where s = 011.
The problem of Simon’s algorithm is to determine s.
Classically
A simple way to solve this problem classically would be to randomly input
values to the black box until we ﬁnd two inputs that produce the same output,
and compute their direct sum. But there are 2n−1 possible outputs, so despite
√
the help from the birthday paradox, we expect it to take 2n−1 = 2(n−1)/2
attempts to ﬁnd s: still exponential time. 44 CHAPTER 4. FOURIER SAMPLING & SIMON’S ALGORITHM Furthermore, it can be shown that no classical computer can ﬁnd s faster
than exponential time. We will use the power of quantum computing to ﬁnd
a faster way.
Quantum
To utilize the power of quantum computing, we will access the function in
superposition. So suppose instead of a black box we are given the circuit Cf
for computing f , from which we can construct the unitary transformation
Uf :
 x  x Uf 0  f ( x)
Figure 4.2: Black Box Circuit The
point here is that the input can be a superposition over all nbit
−
−
strings N=01 αx x (N = 2n ), yielding the output N=01 αx x f (x). This
x
x
can be thought of as querying f in superposition.
Simon’s Algorithm consists of 3 main steps.
1
Step 1: Prepare the random superposition √2 (x0 + x0 ⊕ s)
Step 2: Use Fourier sampling to produce a y such that y · s = 0
Step 3: Repeat until there are enough such y ’s that we can classically
solve for s.
Now lets see the details on how to do each step.
1
Step 1: Prepare the random superposition √2 (x0 + x0 ⊕ s)
First query the function with a uniform superposition of the nbit strings.
To prepare this uniform superposition, start with the state 0 then apply the
Hadamard transform. With N = 2n , this is written:
N −1
1
H ⊗n
0 0 −→
 x  0
N
x=0 Next we will use the unitary transformation Uf to query f in uniform superposition.
N −1
N −1
Uf
1
1
x 0 −→
 x f ( x )
N
N
x=0 x=0 Now what happens if we measure the second register containing f (x)?
It must collapse into f (x0 ) for some x0 ∈ Zn . But this reveals information
2 4.7. SIMON’S ALGORITHM 45 about the ﬁrst register, and it will also collapse into the preimages of f (x0 ):
x0 and x0 ⊕ s.
N −1
1
measure f 1
x f (x) −→ √ (x0 + x0 ⊕ s) f (x0 )
N
2
x=0 1
The ﬁrst register is now the state √2 (x0 + x0 ⊕ s) where x0 is a random
nbit string. The challenge is to read oﬀ s from this superposition. We cannot
simply measure the state because the superposition will be destroyed, and the
result we get will have no information about s.
Step 2: Use Fourier sampling to ﬁnd a y such that y · s = 0.
1
1
We now show that H ⊗2 ( √2 x0 + √2 x0 ⊕ s is a uniform superposition
ove...
View
Full
Document
This document was uploaded on 09/22/2013.
 Fall '13

Click to edit the document details