Download presentation
Presentation is loading. Please wait.
1
Quantum Speedups DoRon Motter August 14, 2001
2
Introduction Two main approaches are known which produce fast Quantum Algorithms The first, and main approach is the Quantum Fourier Transform –This is used in number factoring, discrete logarithm, and other algorithms The second approach is Grover’s search
3
Notation Let 0.j 1 j 2 j 3 …= j 1 /2+j 2 /4+j 3 /8… H n denote taking the tensor product n times
4
Discrete Fourier Transform Defined as –where 0 k N – 1 Fast implementation takes O(N lg N)
5
Quantum Fourier Transform The same transformation On an orthonormal basis defined as
6
Quantum Fourier Transform Alternately, on an n qubit computer, use the basis N=2 n
7
Quantum Fourier Transform That’s great, but how do you build it? –Rewriting QFT expression gives rise to a circuit which implements it
8
Quantum Fourier Transform
10
QFT: Gates To build the circuit for the QFT, we will need an additional gate: We’ll also need the Hadamard gate
11
QFT: Implementation Using R and H we can produce an efficient circuit for the QFT The circuit comes naturally since the formula for QFT has been decomposed into the product representation
12
QFT: Implementation
13
What is the effect of ? Recall: Symbolically
14
QFT: Implementation What is the effect of ? Notice:
15
QFT: Implementation Using these effects we can verify the circuit
16
QFT: Implementation Begin in initial state The first gate is the Hadamard gate on bit 1 Next, apply R 2
17
QFT: Implementation
18
Continue to apply R 3 …R n, giving This produces the desired ‘factor’ in the product representation
19
QFT: Implementation
20
The next level of the circuit acts similarly: Applying the Hadamard gate gives
21
QFT: Implementation Applying the gates R 2 …R n-1 gives After all gates are applied, the state will be
22
QFT: Summary The QFT uses n(n+1)/2 gates not counting swaps QFT is unitary, since each gate is unitary Using the QFT is subtle –There is no way of directly accessing the result –There is no way (in general) of preparing the initial state efficiently
23
Search Algorithms A simple example of search: Everyone’s second C++ program: for(int x = 2; x <= sqrt(n); ++x) { if( “n is divisible by x” ) return Composite; } return Prime;
24
Search Algorithms Oracle Search –Oracle(x) takes the value 1 iff x is a solution to the search problem Grover’s search uses an oracle –In general, a unitary operator The specific oracle depends on the search desired
25
Grover Iteration Grover’s Search is the repeated application of a single operation –This operation is called the Grover operator, G Understanding G is key to understanding Grover’s search
26
Grover Iteration G consists of four ‘steps’ 1.Apply the Oracle operator O 2.Apply the Hadamard transform H n 3.Give every basis state except a phase shift of –1 4.Apply the Hadamard transform H n
27
Grover Iteration Give every basis state except a phase shift of –1 This can be written
28
Grover Iteration Consider the last 3 steps 2.Apply the Hadamard transform H n 3. 4.Apply the Hadamard transform H n Together these give:
29
Grover Iteration G consists of four ‘steps’ 1.Apply the Oracle operator O 2.Apply the Hadamard transform H n 3. 4.Apply the Hadamard transform H n Together these give:
30
Grover’s Search Takes: A black box oracle O which performs n+1 qubits in the state
31
Grover’s Search Runtime: Procedure: –Initialize states: –Apply H n to the first n quibits, and HX to the last qubit –Apply the Grover iteration –Measure first n qubits
32
Grover’s Search Procedure: –Initialize states: –Apply H n to the first n quibits, and HX to the last qubit –Apply the Grover iteration –Measure first n qubits
33
Conclusion
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.