100% found this document useful (1 vote)
200 views

Using Generalized Quantum Fourier Transforms in Quantum Phase Estimation Algorithms

This thesis presents a unied framework for generalized AQFT-based phase estimation algorithms, gives a thorough analysis of these algorithms, and explores issues surrounding the applicability of these algorithms as components of larger quantum algorithms

Uploaded by

Pandora Spotify
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
100% found this document useful (1 vote)
200 views

Using Generalized Quantum Fourier Transforms in Quantum Phase Estimation Algorithms

This thesis presents a unied framework for generalized AQFT-based phase estimation algorithms, gives a thorough analysis of these algorithms, and explores issues surrounding the applicability of these algorithms as components of larger quantum algorithms

Uploaded by

Pandora Spotify
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 94

Using Generalized Quantum Fourier Transforms in

Quantum Phase Estimation Algorithms


by
Donny Cheung
A thesis
presented to the University of Waterloo
in fullment of the
thesis requirement for the degree of
Master of Mathematics
in
Combinatorics and Optimization
Waterloo, Ontario, Canada, 2003
c _Donny Cheung 2003
I hereby declare that I am the sole author of this thesis.
I authorize the University of Waterloo to lend this thesis to other institutions
or individuals for the purpose of scholarly research.
I further authorize the University of Waterloo to reproduce this thesis by pho-
tocopying or by other means, in total or in part, at the request of other institutions
or individuals for the purpose of scholarly research.
ii
The University of Waterloo requires the signatures of all persons using or pho-
tocopying this thesis. Please sign below, and give address and date.
iii
Abstract
The quantum Fourier transform (QFT) is the cornerstone of most of the impor-
tant and signicant algorithms for quantum computers currently known. However,
the physical implementation of a QFT requires the use of quantum gates with a
precision that may be dicult or even impossible to achieve due to both physical
imprecision and the eects of decoherence. Fortunately, the gates requiring the
most precision are also the gates that have the least eect on the nal output,
so this limitation in the QFT may be overcome by using the approximate quan-
tum Fourier transform (AQFT), which ignores the smaller gates in the hope that
less accurate results are compensated for by being better-suited to actual physical
implementation.
This thesis presents a unied framework for generalized AQFT-based phase
estimation algorithms, gives a thorough analysis of these algorithms, and explores
issues surrounding the applicability of these algorithms as components of larger
quantum algorithms.
iv
Acknowledgements
I am indebted to the many people who have helped me during the process of writing
this thesis, rst and foremost to my supervisor, Michele Mosca, who rst introduced
me to the eld to quantum computing. My thesis readers, Raymond Laamme and
Paul Schellenberg have provided me with indispensible feedback on all sections of
thesis. The content of this thesis has also benetted from productive discussions
with Phillip Kaye, Lawrence Ioannou and Christof Zalka. Finally, I would like to
thank Jared Penner for applying his technical proofreading skills to this thesis.
v
Contents
1 Introduction 3
1.1 The Quantum Fourier Transform . . . . . . . . . . . . . . . . . . . 3
1.2 Variations of the QFT . . . . . . . . . . . . . . . . . . . . . . . . . 4
2 Quantum Circuits 6
2.1 Qubits and Quantum Gates . . . . . . . . . . . . . . . . . . . . . . 6
2.2 Quantum Gates and Reversible Logic . . . . . . . . . . . . . . . . . 9
2.3 Commonly Used Quantum Gates . . . . . . . . . . . . . . . . . . . 12
2.4 Universal Sets of Quantum Gates . . . . . . . . . . . . . . . . . . . 15
3 The QFT and Phase Estimation 18
3.1 The Discrete Fourier Transform . . . . . . . . . . . . . . . . . . . . 18
3.2 The Quantum Fourier Transform . . . . . . . . . . . . . . . . . . . 19
3.3 Quantum Phase Estimation and QFT . . . . . . . . . . . . . . . . . 23
3.4 Analysis of QFT-based Phase Estimation . . . . . . . . . . . . . . . 26
3.5 Using Individual Trials in Phase Estimation . . . . . . . . . . . . . 33
vi
3.6 Analysis of Individual Trials . . . . . . . . . . . . . . . . . . . . . . 37
4 The Approximate QFT 42
4.1 Kitaevs Algorithm and Variations . . . . . . . . . . . . . . . . . . . 43
4.2 The Approximate QFT . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.3 Analysis of the Approximate QFT . . . . . . . . . . . . . . . . . . . 55
4.4 An MLE for the Approximate QFT . . . . . . . . . . . . . . . . . . 61
5 Generalized Phase Estimation Algorithms 65
5.1 A General Model for AQFT Circuits . . . . . . . . . . . . . . . . . 65
5.2 Analysis of the Generalized AQFT . . . . . . . . . . . . . . . . . . 67
5.3 Repeated Individual Trials . . . . . . . . . . . . . . . . . . . . . . . 71
6 Applications and Future Work 74
6.1 Order Finding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74
6.2 Shors Polynomial-time Factoring Algorithm . . . . . . . . . . . . . 76
6.3 The Abelian Hidden Subgroup Problem . . . . . . . . . . . . . . . . 77
6.4 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
6.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Bibliography 84
vii
List of Figures
2.1 Reversible versions of classical AND, OR and NOT gates . . . . . 11
2.2 Hadamard Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 /8 Phase Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4 Controlled-NOT (CNOT) Gate (with control qubit on top) . . . . 14
2.5 Controlled-U Gate (with control qubit on top) . . . . . . . . . . . . 14
3.1 A quantum circuit that performs a quantum Fourier transform . . . 20
3.2 The rst half of the phase estimation algorithm . . . . . . . . . . . 24
3.3 The second half of the phase estimation algorithm: The Inverse QFT 26
3.4 QFT-based phase estimation divided into individual trials . . . . . 35
4.1 AQFT
1
: Kitaevs circuit for solving the phase estimation problem . 43
4.2 P(, (0, 1, 1, 1, 0)) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
4.3 P(, (0, 1, 1, 1, 0)), with P
2
=
1
10

cos

2
(2
5
)

. . . . . . . . . . . . . 47
4.4 Additional trial for distinguishing and 1 . . . . . . . . . . . . 49
4.5 cos
2
2
(2 +
1
2
) P(, (0, 1, 1, 1, 0)) . . . . . . . . . . . . . . . . . . . 50
viii
4.6 A quantum circuit implementing the AQFT . . . . . . . . . . . . . 51
4.7 The second half of the AQFT-based quantum phase estimation circuit 56
5.1 A generalized individual trial T
p
. . . . . . . . . . . . . . . . . . . . 66
ix
Preface
This thesis attempts to give a mostly self-contained development of the quantum
Fourier transform, and the generalizations which are its main focus, from the be-
ginning principles of quantum computation. Some rudimentary familiarity with
algebra and computing is assumed.
We begin in Chapter 2 with a summary of basic notation and the quantum
circuit model, which is the model of quantum computation used throughout this
thesis. Chapter 3 follows with an overview of the QFT and its role in the phase es-
timation algorithm. From there, we develop the generalized AQFT by rst looking
at the AQFT in Chapter 4, and then by exploring and analyzing generalizations in
Chapter 5. Finally, Chapter 6 contains a survey and discussion of signicant appli-
cations of the phase estimation algorithm, then explores how using the generalized
AQFT circuit impacts these applications.
This thesis contains several results which, to the best of my knowledge, have
not appeared before. First, there is the development and analysis of the generalized
AQFT circuit in Chapter 5 which is the title topic of my thesis. In Chapter 4, I give
a classical post-processing algorithm for nding the maximum likelihood estimate in
a reduced version of Kitaevs phase estimation algorithm, and a heuristic argument
as to why this proposed algorithm may be ecient. Also in this chapter, I give
1
2
a new and more detailed analysis of Coppersmiths approximate quantum Fourier
transform, with a new lower bound on the probability of success which makes the
AQFT a much more viable and ecient option as a replacement of the QFT. Finally,
the generalizations to the phase estimation algorithms developed in this thesis are
analyzed with an emphasis on obtaining maximum likelihood estimates.
In addition to these results, Chapter 3 also contains a complete proof of the
8

2
lower bound for the probability of having the QFT-based phase estimation algo-
rithm return one of the two nearest estimates of the correct phase. Such a proof,
to the best of my knowledge, has not yet appeared in the literature.
Chapter 1
Introduction
Quantum information processing is a relatively young scientic eld which investi-
gates the possibility of exploiting the quantum-mechanical properties of nature in
performing computations. One of the most interesting aspects of quantum infor-
mation processing is that this model of computation allows us to create algorithms
which are far superior in asymptotic running time to any classical counterparts
known to date which solve the same problems. The quantum algorithm known
as the quantum Fourier transform (QFT) is the cornerstone of many of these al-
gorithms, including the surprising quantum polynomial-time integer factorization
algorithm discovered by Peter Shor.
1.1 The Quantum Fourier Transform
The QFT is a quantum algorithm which solves the classical problem of calculating
the discrete Fourier transform (DFT) of a complex-valued vector of length N = 2
n
,
where n is a non-negative integer. The main dierence between the QFT and the
3
CHAPTER 1. INTRODUCTION 4
classical DFT algorithms is that while classical algorithms take an entire complex-
valued vector of length N and give us the entire DFT in the form of another vector
of length N, the QFT takes a quantum state in which the initial data have been
encoded into probability amplitudes and alters the amplitudes corresponding to the
DFT. Unfortunately, we are unable to directly access the individual values in the
nal quantum state, making the QFT unsuitable for applications such as digital
signal processing. However, the strength of the QFT comes from the fact that
this operation is achieved in polynomial-time with respect to n giving an expo-
nential improvement on the fastest known classical DFT algorithms. Furthermore,
the quantum state prepared by the QFT is still very useful in a wide range of
computational tasks.
Most of the applications of the QFT in quantum algorithms are instances of the
Phase Estimation problem, which can be solved eciently using an algorithm that
incorporates the QFT. Given a unitary operator U and a quantum register that
contains an eigenvector of U, the Phase Estimation Problem asks for the eigenvalue
that corresponds to the given eigenvector. By using various dierent constructions
for the unitary operator U, an ecient solution to the Phase Estimation problem
leads to ecient solutions for many problems of interest, including integer factor-
ization and the discrete logarithm problem, for which there are no known ecient
solutions using classical computation.
1.2 Variations of the QFT
The main concern with the eciency of the QFT algorithm is its use of a particular
class of quantum gates called controlled phase-shift gates. As the number of qubits
in the input, n, increases, the QFT algorithm requires exponentially smaller phase
CHAPTER 1. INTRODUCTION 5
shifts, which may be increasingly dicult or even infeasible to implement physi-
cally. Fortunately, the phase shift gates requiring the most precision are also the
phase shift gates which have the least eect on the output. As a result, the idea
of an approximate quantum Fourier transform (AQFT) was suggested, in which
the smallest phase shifts would simply be ignored. Since the overall eect on the
output quantum state is small, the AQFT is still suitable in solving the phase es-
timation algorithm, but there is a clear trade-o in accuracy. The idea behind the
AQFT may be extended further by exploiting a property of the phase estimation
algorithm. In the phase estimation algorithm, dierent parts of the computation
may be separated into individual modules and recombined in dierent ways with
dierent parameters, then analyzed to obtain the optimal combination of param-
eters for a given application or for a particular physical realization of a quantum
computer.
Chapter 2
Quantum Circuits
As with classical computers, it is fortunate that an intimate knowledge of the
physical details within a quantum computer is not necessary to discuss quantum
algorithms, especially since a reliable, functional quantum computer has yet to be
created. Instead, it is possible to describe the action of a quantum computer as a
quantum circuit, consisting of a network of logical quantum gates operating on a
collection of logical quantum bits, or qubits. This chapter introduces some of the
theoretical background behind the quantum circuit model of computation, which
is the model used in the discussion of quantum algorithms such as the QFT and
AQFT in subsequent chapters.
2.1 Qubits and Quantum Gates
The qubit is the basic unit of information in the quantum circuit model. In classical
binary logic, information is organized into bits, each of which is in one of two discrete
states, 0 or 1. Likewise, a qubit may be in the two corresponding quantum states
6
CHAPTER 2. QUANTUM CIRCUITS 7
[0) or [1), where Diracs ket ([)) notation indicates a quantum state. However, a
qubit is also allowed to be in a superposition of the two logical states [0) and [1),
which is simply a linear combination of these two states:
[) = [0) + [1) ,
where [) denotes the state of the qubit, and , C are amplitudes, subject to the
identity [[
2
+ [[
2
= 1. Although a qubit is permitted to be in any superposition
of the two basis states, [0) and [1), if the qubit is observed by measurement, the
result of this measurement will be one of the two basis states: [0) with probability
[[
2
, or [1) with probability [[
2
. Furthermore, the act of measurement destroys
the superposition so that the quantum state of the qubit becomes one of the two
basis states. Although there is no way to retrieve the coecients and directly
from a qubit, measuring a number of qubits which are previously known to be in
the same quantum state will give progressively better estimates of the values of
and for the original state prior to measurement.
Qubit states may also be considered as vectors in a nite-dimensional inner
product space over C, otherwise known as a nite-dimensional Hilbert space. The
dual of a vector [) is dened as the complex conjugate transpose of that vector,
and notated with Diracs bra ([) notation: [ ([))

, where A

denotes the
complex conjugate transpose of A.
1
The inner product of two vectors [
1
) and [
2
)
is simply
1
[ ([
2
)), which may also be notated
1
[
2
), which is Diracs bra-ket
notation. Using the Euclidean norm,
[[[)[[
_
[),
1
The notation for the complex conjugate transpose of a matrix is inconsistent between mathe-
matics, computer science and physics. Since the bra-ket notation used in this thesis for quantum
states is the notation used in physics, we will adopt the dagger () notation used in physics.
CHAPTER 2. QUANTUM CIRCUITS 8
we note that the set of all possible qubit states is equivalent to the set of vectors
in C
2
with norm 1.
Unlike classical physics, quantum mechanics allows collections of multiple qubits
to be entangled with each other, so that the quantum states of the entire collection
of qubits may be in superposition in such a way that the individual qubits may not
be considered as having individual qubit states. For example, a two-qubit system,
or register, Q
1
Q
2
= [
1
) [
2
), may be found in one of four basis states: [0)[0),
[0)[1), [1)[0), or [1)[1), which correspond to the four combinations of basis states
obtained when each qubit is considered separately. However, it may also be found
in a superposition of these states, such as
1

2
[0)[0) +
1

2
[1)[1) ,
which cannot be expressed as a combination of two separate qubit states, Q
1
= [
1
)
and Q
2
= [
2
). This particular two-qubit state is known as the Bell state.
Mathematically, a system of n qubits may be considered as a tensor product of
the n individual qubits. Since each individual qubit state is an element of a Hilbert
space, C
2
, the state associated with any system of n qubits is an element of the
Hilbert space,
C
2
C
2
C
2
=
_
C
2
_
n

= C
2
n
.
This is consistent with the 2
n
basis states of an n-qubit system each having an
amplitude independent of the other amplitudes. However, we also restrict the set
of vectors corresponding to valid n-qubit systems to those with a norm of 1. The
ability of a system of n qubits to store 2
n
complex numbers in the form of ampli-
tudes of its basis states provides some insight into the potential power of quantum
computing over classical computing, even though the individual amplitudes are not
directly accessible.
CHAPTER 2. QUANTUM CIRCUITS 9
Although an n-qubit system may be in any superposition of its 2
n
basis states,
two quantum systems which dier only by global phase, i.e., a constant complex
factor (of norm 1) applied to the entire system, are physically indistinguishable
and considered identical. However, the relative phase between two components of
a quantum system in superposition does aect the state of the system. In other
words, given a quantum state [) = [
1
) + [
2
), two systems in the states [)
and e
i
[) = e
i
[
1
) + e
i
[
2
) are considered to be identical, but two systems
in the states [
1
) + [
2
) and [
1
) +e
i
[
2
) are not.
Notationally, a quantum system [) written as a tensor product, such as
[) [x
1
) [x
2
) . . . [x
n
) ,
may also be abbreviated as [x
1
)[x
2
). . .[x
n
) or [x
1
x
2
. . . x
n
), where each x
p
is ei-
ther 0 or 1. It is also sometimes convenient to consider x
1
x
2
. . . x
n
as the binary
representation of an integer,
x =
n

p=1
x
p
2
np
,
and to dene [x) [x
1
x
2
. . . x
n
), where x Z.
For reasons of clarity, the probability amplitudes of a given state may remain
unnormalized. The normalized vector can be obtained by dividing each amplitude
by the norm of the entire vector. For example, the qubit
1

2
[0)+
1

2
[1) is frequently
written as [0) +[1).
2.2 Quantum Gates and Reversible Logic
The other essential building block of a quantum computer is the quantum logic
gate, which has the ability to alter the state of a system of qubits in the same way
CHAPTER 2. QUANTUM CIRCUITS 10
that classical logic gates operate on systems of bits. The most important property
of quantum gates is that given a gate, G, which acts on an n-qubit register and
maps [x) G[x) for each x 0, 1, . . . , 2
n
1, G will map any superposition of
states [x) linearly, i.e., to the same superposition of corresponding outputs, G[x).
In other words,
G
_
2
n
1

x=0

x
[x)
_
=
2
n
1

x=0

x
G[x) .
This means that performing one operation on a system of qubits in a superposition
of basis states eectively performs that operation on each of the basis states in
that superposition. This ability gives quantum computing another advantage over
classical computing.
The operations performed by quantum gates on qubits may be thought of as
linear operators on vectors. However, since any operation performed on a qubit
must preserve the norm of the qubit, the laws of quantum mechanics dictate that
operations on closed quantum systems must be unitary, i.e., that G

= G
1
for any
quantum gate G. The requirement that these operations be unitary also implies that
each operation must be invertible, which is a restriction not imposed on classical
logic. Fortunately, there is a simple way to convert any function from classical
logic into a reversible operator corresponding to an invertible, and thus unitary,
operator. Given an operator which takes n bits, x = x
1
x
2
. . . x
n
as input, and gives
m bits of output, f
1
(x), f
2
(x), . . . , f
m
(x), we construct a new operator, g, which
takes n +m bits of input and gives n +m bits of output, dened by
g
p
(x
1
, . . . , x
n
, y
1
, . . . , y
m
) =
_
_
_
x
p
if p n
y
pn
f
pn
(x
1
, . . . , x
n
) if n < p,
where denotes the XOR bit function. The operator g is clearly invertible, and
by setting y
q
= 0 for 1 q m, we obtain f
q
g
n+q
whenever 1 q m. Given
CHAPTER 2. QUANTUM CIRCUITS 11
[(x
1
))
[y
1
(x
1
x
2
))
[x
2
) [x
2
) AND
[y
1
)
[x
1
) [x
1
)
[x
2
)
[y
1
)
[x
1
) [x
1
)
OR [x
2
)
[y
1
(x
1
x
2
))
NOT [x
1
)
Figure 2.1: Reversible versions of classical AND, OR and NOT gates
reversible versions of the AND, OR and NOT gates (see Figure 2.1) and the fact
that the composition of unitary operators is a unitary operator itself, it is easy to
see that any classical circuit may be converted into a quantum circuit corresponding
to a unitary operator. Note that the above construction is not needed for the NOT
gate, as it is already reversible.
However, since an n-qubit quantum state is equivalent to a complex-valued vec-
tor of size 2
n
, the set of possible unitary operators is much larger than the set of
possible classical logical functions on n bits, as each classical logical function corre-
sponds to an operator that can be implemented using only the reversible versions
of classical gates AND, OR and NOT given above. Ideally, there would be a nite
set of physically realizable quantum gates such that for any given unitary operator,
it could be implemented as a quantum network using only these gates. In prac-
tice, although it is not possible to implement an arbitrary unitary operator exactly,
there exist nite sets of quantum gates that are universal in that it is possible to
approximate any unitary operator within any given degree of error using a quantum
network of these gates.
Although we have described quantum gates basically as unitary operators, we
make a distinction between a quantum gate, which simply describes a unitary oper-
CHAPTER 2. QUANTUM CIRCUITS 12
[0)[1) H [0) [0)+[1) H [1)
Figure 2.2: Hadamard Gate
ation on some collection of input qubits, and the unitary operator, which operates
on n-qubit quantum states. Depending on the combination and the order of qubits
from an n-qubit quantum state which are used as input qubits for the quantum
gate, the quantum gate may be represented by dierent unitary operators. In fact,
for each n, the quantum gate is represented by a dierent set of unitary operators,
as the dimension of the operator depends on n.
2.3 Commonly Used Quantum Gates
Although universal sets of gates are not dicult to construct, in practice the most
useful gates either have simple physical implementations or are convenient to work
with from a theoretical point of view. The universal set H, T, CNOT, is both easy
to work with abstractly and contains gates which are relatively easy to implement
in most physical realizations of quantum computers.
The Hadamard gate, H, acts on one qubit (see Figure 2.2), and corresponds to
the operator
H =
_
_
1

2
1

2
1

2

1

2
_
_
,
giving us
H([0) + [1)) =
+

2
[0) +

2
[1) .
The /8 gate, denoted T, is also a one-qubit quantum gate, and shifts the
relative phase of the [1) component of a qubit by an angle of = /4, which
CHAPTER 2. QUANTUM CIRCUITS 13
e
i/4
[1) [0) T [0) T [1)
Figure 2.3: /8 Phase Gate
corresponds to a factor of e
i
= e
i/4
. This is eected by the operator
T =
_
_
1 0
0 e
i/4
_
_
.
Since global constant factors are ignored by qubits, we may rewrite T as
T = e
i/8
_
_
e
i/8
0
0 e
i/8
_
_
,
which explains the origin of the name /8 gate.
We have
T([0) + [1)) = [0) +e
i/4
[1)
(see Figure 2.3). In general, phase shift gates may shift the relative phase by other
amounts as well.
The controlled-NOT, or CNOT, gate is a two-qubit quantum gate where the
value of the control qubit determines whether a NOT gate (denoted by in Figure
2.4) is applied to the second qubit. In matrix form, this operator can be written as
CNOT =
_
_
_
_
_
_
_
_
1 0 0 0
0 1 0 0
0 0 0 1
0 0 1 0
_
_
_
_
_
_
_
_
,
giving us
CNOT(
00
[00)+
01
[01)+
10
[10)+
11
[11)) =
00
[00)+
01
[01)+
11
[10)+
10
[11) .
CHAPTER 2. QUANTUM CIRCUITS 14
[1)
hh
[0) [0)
[0) [0)
x
hh
x
hh
x
hh
[0)
[0) [0)
[0)
[1) [1)
[1) [1)
[1)
[1)
[1)
x
Figure 2.4: Controlled-NOT (CNOT) Gate (with control qubit on top)
U [)
x
[) U
[1) [1) [0)
[) U
[0)
[)
x
Figure 2.5: Controlled-U Gate (with control qubit on top)
Note that the control qubit is left unchanged.
In general, any operator U may be controlled by a qubit in this manner, and is
represented on a quantum network diagram as in Figure 2.5. Given a control qubit,
[0) + [1), and [) as the input state for U, the controlled-U gate outputs
c-U(([0) + [1)) [)) = [0) [) + [1) (U[)).
The proof of the universality of the set H, T, CNOT involves constructing a
decomposition of arbitrary unitary operators into a combination of CNOT gates
and single-qubit operators. It can then be shown that any single-qubit operator
can be approximated to arbitrary precision using a combination of Hadamard (H)
and /8 (T) gates. Both of these constructions may be found in [10].
CHAPTER 2. QUANTUM CIRCUITS 15
2.4 Universal Sets of Quantum Gates
To formally dene universality for a set of quantum gates, we must rst dene a
distance function for unitary operators. First, for arbitrary operators on n-qubit
systems:
A :
_
C
2
_
n

_
C
2
_
n
,
we will use the norm function induced by the Euclidean norm for vectors,
[[A[[ = max
|||||=1
[[A[)[[ .
Now, the distance between two unitary operators U and U

is simply dened as
d(U, U

) = [[U U

[[ .
We may now dene a universal set of quantum gates as a nite set of quantum
gates that has the property that, given a positive integer n, a unitary operator U :
(C
2
)
n
(C
2
)
n
which operates on n-qubit systems, and an error tolerance > 0,
there exists a sequence of gates (and input qubits for each gate) that implements a
unitary operator U

so that d(U, U

) < .
The distance function d also has two useful properties. First, given two unitary
operators U
1
and U
2
which correspond to the same quantum gate G being applied
to dierent combinations of qubits within the same quantum register, let G

be
an approximation of G, and U

1
and U

2
be the corresponding unitary operators
which correspond to G

and approximate U
1
and U
2
, respectively. Then we have
d(U
1
, U

1
) = d(U
2
, U

2
). This allows us to speak of the distance between a quantum
gate and its approximation independently of which qubits the gate would be applied
to in a given register. Secondly, given two dierent unitary operators U
1
and U
2
which take the same number of input qubits, and two respective approximations
CHAPTER 2. QUANTUM CIRCUITS 16
U

1
and U

2
, we have
d(U
2
U
1
, U

2
U

1
) = [[U
2
U
1
U

2
U

1
[[
= [[U
2
U
1
U
2
U

1
+U
2
U

1
U

2
U

1
[[
[[U
2
(U
1
U

1
)[[ +[[(U
2
U

2
)U

1
[[
[[U
2
[[ [[U
1
U

1
[[ +[[U
2
U

2
[[ [[U

1
[[
d(U
1
, U

1
) +d(U
2
, U

2
)
using both the subadditive and submultiplicative property of the norm and the fact
that [[U[[ = 1 for any unitary operator. In other words, since a quantum network
is simply a sequence of unitary operators applied to a quantum register, the total
error incurred by replacing the gates in the network with an approximate version
is at most the sum of the individual errors incurred by each gate being replaced. If
we used a universal set of quantum gates to approximate each gate in a quantum
network to within a distance of , the cumulative error would be bounded from
above by a linear function of the number of gates in the network. Also, since
universal sets of quantum gates are nite, there is only a constant factor overhead
in using a dierent universal set of quantum gates to approximate each of the gates
in the rst set to within a xed distance, . This gives us a measure of the eciency
of a quantum algorithm, independent of the choice of universal set quantum gates
used, which is based on the number of gates it would take to implement a given
function as a uniform family of circuits C
n

n=1
, where a particular C
n
handles
the function for n-qubit input. The only practical restriction on uniform families
is that there must exist a Turing machine which takes an integer n as input and
outputs the sequence of quantum gates used to construct C
n
in O(n
c
) steps, for
some xed integer, c.
However, the question remains over how eciently we may approximate a given
CHAPTER 2. QUANTUM CIRCUITS 17
quantum gate using gates from a universal set, with respect to the desired tolerance
for error . In other words, given a specic quantum gate, we would like to know
how many gates from a universal set, as a function of , are needed to construct a
quantum network which approximates the given gate to within a distance of . If
gates cannot be approximated eciently, then great increases in complexity could
occur when implementing quantum algorithms using a restricted set of gates.
Fortunately, the Solovay-Kitaev theorem gives us an ecient construction which
allows any quantum gate to be approximated to within a distance of using a
quantum network with O(log
c
(1/)) gates from a universal set,
2
where c is any
xed constant whose value is greater than 2. Suppose we have a uniform family
of quantum circuits C
n

n=1
which implements a quantum algorithm, and for each
integer n, we dene the function f(n) to be the number of quantum gates in the
corresponding circuit C
n
. If we wish to approximate C
n
using a universal set of gates
to within a distance of , then, by our observation above, we should approximate
each individual gate in C
n
to within a distance of /f(n) in order to have a total
error within . By the Solovay-Kitaev theorem, for each gate in C
n
, the approximate
version will require O(log
c
(f(n)/)) gates from the universal set. This gives us a
total of O(f(n) log
c
(f(n)/)) for the entire circuit, which is a very small overhead
in the number of gates for most purposes.
2
Technically, the Solovay-Kitaev construction also requires that, for each gate Gin the universal
set, we also have a gate which performs the inverse operation G
1
. However, this requirement is
not important for our purposes.
Also, the original construction concerns only the simulation of single-qubit gates, but can be
easily expanded to accomodate arbitrary unitary operators.
Chapter 3
The Quantum Fourier Transform
and Phase Estimation
In classical computing, the applications of Fourier transforms are mostly limited to
digital signal processing or multi-precision integer multiplication routines. Using
the ability of quantum gates to perform computations simultaneously on up to
2
n
quantum basis states using only an n-qubit register, the quantum computing
analogue of the Fourier transform can be used to perform computational tasks that
are intractable with todays classical algorithms.
This chapter develops the quantum Fourier transform algorithm and explores
its use within algorithms for quantum phase estimation.
3.1 The Discrete Fourier Transform
In simplest terms, the discrete Fourier transform is a function on a complex vector
of xed size, N, which returns another complex vector. Specically, given the vector
18
CHAPTER 3. THE QFT AND PHASE ESTIMATION 19
(z
0
, z
1
, . . . , z
N1
) C
N
, the discrete Fourier transform, DFT, will return the vector
(Z
0
, Z
1
, . . . , Z
N1
) C
N
, where
Z
k
=
N1

j=0
z
j
e
2ijk/N
.
However, for the purposes of quantum information processing, we use the normal-
ized version of the transform, which is scaled by a factor of
1

N
in order to make
the transform a unitary operator, giving us the transform
Z
k
=
1

N
N1

j=0
z
j
e
2ijk/N
. (3.1)
This constant factor does not aect any of the mathematical properties of the
discrete Fourier transform. Instead, it allows us to construct a quantum algorithm
with which to implement it.
Currently, the best classical algorithm known that computes a discrete Fourier
transform is the Fast Fourier Transform (FFT), which computes the transform of
a vector whose size N = 2
n
is an integer power of 2. By dividing the data into two
halves, recursively performing a smaller DFT on each half, and combining the two
results into the whole transform, the DFT can be computed in O(N log N) time.
However, this is still an exponential function of n.
3.2 The Quantum Fourier Transform
The quantum Fourier transform is a quantum circuit which performs a discrete
Fourier transform on the complex-valued vector of 2
n
probability amplitudes asso-
ciated with an n-qubit quantum system. Specically, given an n-qubit state as a
superposition of basis states [0), [1), . . ., [2
n
1), the QFT maps each basis state
CHAPTER 3. THE QFT AND PHASE ESTIMATION 20
[0) +e
2i(0.x2xn)
[1)
H R
2
R
n1
R
n
H R
n2
R
n1
H R
2
H
w
w
w
w
w w
......
......
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
[x
1
)
[x
2
)
[x
n1
)
[x
n
)
[0) +e
2i(0.xn1xn)
[1)
[0) +e
2i(0.xn)
[1)
[0) +e
2i(0.x1x2xn)
[1)
Figure 3.1: A quantum circuit that performs a quantum Fourier transform
[j) to
QFT([j)) =
1

2
n
2
n
1

k=0
e
2ijk/2
n
[k) . (3.2)
Since quantum circuits are linear operators, this means that given the n-qubit state
[) as input, where
[) =
2
n
1

j=0
z
j
[j) ,
the QFT will output the n-qubit state
QFT([)) =
2
n
1

j=0
QFT(z
j
[j)) =
2
n
1

j=0
2
n
1

k=0
z
j
e
2ijk/2
n

2
n
[k) =
2
n
1

k=0
Z
k
[k) ,
with Z
k
as dened in Equation (3.1) above. The algorithm eectively takes the
2
n
probability amplitudes of an n-qubit state as a vector of size 2
n
and performs
a discrete Fourier transform on that vector so that the result is encoded in the
probability amplitudes of the output state.
The simplest way to show that the normalized Fourier transform is a unitary
operation is to demonstrate the quantum circuit that performs the QFT. In the
diagram of the QFT circuit given in Figure 3.1, the input register contains an
CHAPTER 3. THE QFT AND PHASE ESTIMATION 21
n-qubit basis state [x) which is rewritten as the tensor product of the individual
qubits in its binary expansion:
[x) [x
1
x
2
x
n
) [x
1
) [x
2
) [x
n
) .
The gates labelled H are Hadamard gates, as described in Section 2.3, and the gates
labelled R
m
represent a series of one-qubit phase rotation gates. For each integer
m 2, the gate R
m
shifts the phase of the [1) component of the input qubit by a
factor of e
2i/2
m
, representing the unitary transformation
_
_
1 0
0 e
2i/2
m
_
_
.
However, in the QFT circuit, each R
m
gate is controlled by another qubit, which is
indicated by a large dot connected to the gate by a vertical line. This means that
given a two-qubit state, [
1
)[
2
), composed of the controlling qubit, [
1
), and the
input qubit, [
2
), the controlled-R
m
gate represents the unitary transformation
_

_
1 0 0 0
0 1 0 0
0 0 1 0
0 0 0 e
2i/2
m
_

_
.
If the controlled-R
m
gate is being applied to a basis state, [x

), where x

is either 0
or 1, then depending on the value of x

, we can either say that the controlled-R


m
gate performs the identity transformation, or the R
m
transformation. However, we
may combine the two and equivalently say that the controlled-R
m
gate performs
the transformation
_
_
1 0
0 e
2ix

/2
m
_
_
on the qubit [
2
), eectively performing a data-dependent phase rotation.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 22
For the output qubits in Figure 3.1, we use the notation 0.x

x
+1
x
+2
x
+m1
to represent the binary fraction x

/2 + x
+1
/4 + x
+2
/8 + + x

m1
/2
m
. In the
QFT circuit, each qubit is initially in the input state [x

) before being used as the


controlling qubit of a series of controlled-R
m
gates, which do not change the state
of the qubit. A Hadamard gate, H, is then applied to the qubit, producing the
state
1

2
([0) + (1)
x

[1)), which can be rewritten as


1

2
([0) + e
2i(0.x

)
[1)). From
here, each controlled-R
m
gate from m = 2 to m = n +1 is applied in sequence,
with [x
+m1
) as the controlling qubit. Each successive controlled-R
m
gate shifts
the phase of the [1) component of a qubit by a factor of e
2ix
(+m1)
/2
m
. The nal
state of the qubit is thus
1

2
([0) + e
2i(0.x

x
+1
xn)
) at the end of the QFT circuit.
Finally, in order to be a true QFT, the nal order of the qubits must be reversed,
giving us
_
[0) +e
2i(0.xn)
[1)
_

_
[0) +e
2i(0.x
n1
xn)
[1)
_

_
[0) +e
2i(0.x
1
x
2
xn)
[1)
_

2
n
as the nal state of the quantum register. This reversal is not indicated in Figure
3.1.
Now, in order to demonstrate the correctness of the QFT circuit given in Figure
3.1, we need to show that the nal output state given by the circuit is equivalent
to QFT([x)), as dened by equation (3.2). Taking the nal output state,
_
[0) +e
2i(0.xn)
[1)
_

_
[0) +e
2i(0.x
n1
xn)
[1)
_

_
[0) +e
2i(0.x
1
x
2
xn)
[1)
_

2
n
,
we rst note that since e
2i
= 1, we have
e
2i(0.x

x
+1
xn)
= e
2i(x
1
x
2
x
1
.x

xn)
= e
2i(2
1
x/2
n
)
,
allowing us to rewrite the output state as
1

2
n
_
[0) +e
2i(2
n1
x/2
n
)
[1)
_

_
[0) +e
2i(2
1
x/2
n
)
[1)
_

_
[0) +e
2i(2
0
x/2
n
)
[1)
_
.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 23
Given an n-qubit basis state [k) = [k
1
k
2
k
n
), the [k) component of the nal state
is
1

2
n
_
e
2ik
1
(2
n1
x/2
n
)
[k
1
)
_

_
e
2ik
n1
(2
1
x/2
n
)
[k
n1
)
_

_
e
2ikn(2
0
x/2
n
)
[k
n
)
_
,
using the fact that e
2i(0)
= 1. Expanding this tensor product yields
1

2
n
_
e
2ik
1
(2
n1
x/2
n
)
_

_
e
2ik
n1
(2
1
x/2
n
)
__
e
2ikn(2
0
x/2
n
)
_
[k)
=
1

2
n
e
2i(2
n1
k
1
+...+2
1
k
n1
+2
0
kn)(x/2
n
)
[k)
=
1

2
n
e
2ikx/2
n
[k) .
Summing over all 2
n
components gives us
1

2
n
2
n
1

k=0
e
2ikx/2
n
[k) = QFT([x))
as the nal output state given by the circuit.
3.3 Quantum Phase Estimation and QFT
Given a unitary operator U and an eigenstate, which is a quantum register that
contains an eigenvector of U, the Phase Estimation Problem asks for the eigenvalue
which corresponds to the given eigenstate. Specically, given U with an eigenstate
[u) such that U[u) = [u), where is the corresponding eigenvalue, we are to nd
so that = e
2i
.
The QFT-based phase estimation algorithm uses the fact that if the phase
amount is an exact integer multiple of 1/2
n
and is encoded as the binary fraction
= (0.x
1
x
2
. . . x
n
), then, given the state [x) = [x
1
x
2
. . . x
n
) as input, the QFT
CHAPTER 3. THE QFT AND PHASE ESTIMATION 24
[u)
H
x
x
x
x
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
[0)
[0)
[0)
[0)
[u)
H
H
H
U
2
U
2
n1
U
[0) +e
2i(2
n1
)
[1)
[0) +e
2i(2
2
)
[1)
[0) +e
2i(2
1
)
[1)
[0) +e
2i(2
0
)
[1)
U
2
2
Figure 3.2: The rst half of the phase estimation algorithm
returns the state
QFT([x)) =
([0) +e
2i(2
0
)
[1)) ([0) +e
2i(2
1
)
[1)) ([0) +e
2i(2
n1
)
[1))

2
n
.
This means that if the state QFT([x)) could be constructed some other way, the
inverse of the QFT operation, QFT
1
, would output the state [x
1
x
2
. . . x
n
), giving
us the individual bits in the binary fractional representation of . Even if were
not an exact integer multiple of 1/2
n
, applying QFT
1
to the constructed state [)
should still yield a close approximation to with high probability.
Given a quantum register in the state [), the rst half of the algorithm prepares
the state
[) =
([0) +e
2i(2
n1
)
[1)) ([0) +e
2i(2
1
)
[1)) ([0) +e
2i(2
0
)
[1))

2
n
using the quantum circuit given in Figure 3.2. Note that the qubits in the register
[) are in the reverse order of the qubits in QFT([x)). However, the inverse QFT
can easily be applied to its input qubits in reverse order as well.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 25
To see how the circuit in Figure 3.2 produces the desired state, consider any one
of the qubits initially in the state [0) in the input register. First, a Hadamard gate,
H, is applied, leaving the qubit in the state
1

2
([0) + [1)). Then, a controlled-U
2
j
gate is applied, which does nothing when the control qubit is in the state [0), and
applies U
2
j
to the eigenstate when the control qubit is in the state [1).
Given the input [0) [u), the controlled-U gate has no eect, and outputs [0) [u).
Given the input [1) [u), the controlled-U gate outputs
c-U([1) [u)) = [1) (U [u)) = [1) (e
2i
[u)) = e
2i
[1) [u) = (e
2i
[1)) [u) .
So, given the actual input state
1

2
([0) +[1)) [u), the controlled-U gate outputs the
state
1

2
([0) +e
2i
[1)) [u) ,
and, in general, the controlled-U
2
j
gate outputs the state
1

2
([0) +e
2i(2
j
)
[1)) [u) ,
giving the desired qubit states in the output register of the quantum circuit in
Figure 3.2.
The second half of the QFT-based quantum phase estimation algorithm involves
applying an inverse QFT to the state [) obtained from the circuit in Figure 3.2.
Since the inverse of a product of unitary operators is the product of the inverses of
the same unitary operators in reverse order:
(U
1
U
2
. . . U
n
)
1
= U
1
n
. . . U
1
2
U
1
1
,
the inverse of a quantum circuit can be constructed by reversing the quantum
network and replacing each quantum gate with the corresponding inverse gate. The
inverse of a controlled phase rotation gate R
m
, which rotates the phase of a qubit by
CHAPTER 3. THE QFT AND PHASE ESTIMATION 26
[x
1
) H
H
H
H
w
w w
w w w
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
......
......
[0) +e
2i(2
0
)
[1)
[0) +e
2i(2
n1
)
[1)
[0) +e
2i(2
n2
)
[1)
[0) +e
2i(2
1
)
[1)
R
1
2
R
1
n1
R
1
n
R
1
n2
R
1
n1
R
1
2
[x
n
)
[x
n1
)
[x
2
)
Figure 3.3: The second half of the phase estimation algorithm: The Inverse QFT
an angle of 2i/2
m
when the control qubit is in the state [1), is simply a controlled
phase rotation gate that rotates the phase by the opposite angle, 2i/2
m
, when
the control qubit is in the state [1). The Hadamard gate, H, is its own inverse:
H
1
= H. The inverse QFT circuit applied to a quantum register containing the
state [) in reverse qubit order is shown in Figure 3.3. When the phase estimation
algorithm yields

, the estimate of the phase , the individual bits of

are obtained
in reverse order, so we classically reverse the order of the qubits in the output
QFT
1
([)). This classical operation is not shown in Figure 3.3.
3.4 Analysis of QFT-based Phase Estimation
We would not generally expect to be an exact multiple of
1
2
n
. Fortunately, the
estimated phase

, which is returned by the inverse QFT, is the nearest exact
multiple of
1
2
n
to with high probability.
To establish this fact, rst note that the input state for the circuit in Figure
CHAPTER 3. THE QFT AND PHASE ESTIMATION 27
3.3,
[) =
([0) +e
2i(2
n1
)
[1)) ([0) +e
2i(2
1
)
[1)) ([0) +e
2i(2
0
)
[1))

2
n
,
can be rewritten using the n-qubit basis states [0), [1), [2), . . ., [2
n
1) as
[) =
1

2
n
2
n
1

k=0
e
2i(k)
[k)
by expanding the tensor product. Applying the inverse QFT, which takes each
basis state [k) and outputs
QFT
1
([k)) =
1

2
n
2
n
1

j=0
e
2ijk/2
n
[j) ,
we obtain
QFT
1
([)) =
1
2
n
2
n
1

j=0
2
n
1

k=0
e
2ijk/2
n
e
2i(k)
[j) .
The amplitude of any particular basis state [j) is

j
=
1
2
n
2
n
1

k=0
e
2ijk/2
n
e
2i(k)
=
1
2
n
2
n
1

k=0
e
2i(j/2
n
)k
, (3.3)
which is a geometric series. If = j/2
n
, which is an integer multiple of 1/2
n
, then

j
=
1
2
n
2
n
1

k=0
1 = 1.
1
Otherwise, we can use the geometric series formula to simplify
j
, obtaining

j
=
1
2
n
1 e
2i(j/2
n
)(2
n
)
1 e
2i(j/2
n
)
=
1
2
n
1 e
2i(2
n
j)
1 e
2i(j/2
n
)
.
1
Since represents the phase dierence between two quantum states as a fraction of 2, two
phase amounts (such as and j/2
n
) are understood to be equal when their fractional parts are
equal. Also, j is understood to be a quantity modulo 2
n
.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 28
Therefore, the probability of obtaining a particular state [j) upon measurement at
the end of the phase estimation algorithm is
P(

= j/2
n
) =

1
2
n
1 e
2i(2
n
j)
1 e
2i(j/2
n
)

2
=
1
2
2n
[1 e
2i(2
n
j)
[
2
[1 e
2i(j/2
n
)
[
2
.
At this point, it is useful to establish the following useful lemma:
Lemma 3.4.1 For any real number ,
[1 e
2i
[
2
= 4 sin
2

and
[1 +e
2i
[
2
= 4 cos
2
.
Proof We have
[1 e
2i
[
2
= [1 cos 2 i sin 2[
2
= (1 cos 2)
2
+ sin
2
2
= 1 2 cos 2 + cos
2
2 + sin
2
2
= 2 2 cos 2
= 4 sin
2
,
using the half-angle formula. The second result can be proven using a similar
derivation.
By using Lemma 3.4.1, we can simplify our expression for P(

= j/2
n
) to obtain
P(

= j/2
n
) =
1
2
2n
sin
2
(2
n
j)
sin
2
( j/2
n
)
.
Letting = j/2
n
, we can rewrite the expression as
P(

= j/2
n
) =
_
sin (2
n
)
2
n
sin
_
2
.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 29
To determine a lower bound on the probability of the phase estimation algorithm
obtaining the estimate

nearest to the actual value , we rst establish another
lemma:
Lemma 3.4.2 For any real number ,= 0, the sequence
S
n
=
_
sin
2
n
sin

2
n
_
2
, n Z, n 0
decreases monotonically, and
lim
n
S
n
=
sin
2

2
.
Proof Since
S
n+1
S
n
=
_
sin
2
n+1
sin

2
n+1
_
2
_
sin
2
n
sin

2
n
_
2
=
_
2
n
2 sin

2
n+1
cos

2
n+1
_
2
_
2
n+1
sin

2
n+1
_
2
= cos

2
n+1
1,
S
n
is a monotone decreasing sequence. To establish the limit, notice that
lim
n
2
n
sin

2
n
= lim
t0
sin t
t
(letting t =
1
2
n
)
= lim
t0
sin t
t
= .
Now,
lim
n
2
n
sin

2
n
=
lim
n
_
1
2
n
sin

2
n
_
2
=
1

2
lim
n
_
sin
2
n
sin

2
n
_
2
=
_
sin

_
2
,
as desired.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 30
Corollary 3.4.3 For any integer n 0 and any real number ,= 0,
_
sin
2
n
sin

2
n
_
2

_
sin

_
2
.

Using Corollary 3.4.3, we can obtain lower bounds for the probability of having
the phase estimation algorithm return rounded to the nearest integer multiple of
1/2
n
(rounded upwards in case of a tie), P
_

1
2
n+1
<
1
2
n+1
_
.
If is an integer multiple of 1/2
n
, say = j/2
n
, then we have
j
= 1 from
Equation (3.3). This means that P(

= j/2
n
) = 1, and so P(

= ) = 1. Now, we
consider the case when is not an integer multiple of 1/2
n
.
Let j be the integer so that

1
2
n+1
< = j/2
n

1
2
n+1
.
Then
[[ = [ j/2
n
[
1
2
n+1
,
which means that the probability that

= j/2
n
is
P(

= j/2
n
) =
_
sin (2
n
)
2
n
sin
_
2

_
sin (2
n
)
(2
n
)
_
2
(by Corollary 3.4.3)
=
_
sin [2
n
[
[2
n
[
_
2

_
sin

2

2
_
2
=
4

2
CHAPTER 3. THE QFT AND PHASE ESTIMATION 31
since
sin
2

2
is a monotone decreasing function on the interval
_
0,

2

and
[2
n
[
2
n
2
n+1
=
1
2
.
We may also establish a lower bound for the probability of the value of

being
one of the two nearest integer multiples of 1/2
n
since in practice, these will be
the two most likely results of the phase estimation algorithm. We can write this
probability as P([[ <
1
2
n
).
Assuming that the value of is not an exact integer multiple of 1/2
n
, in which
case the probability of obtaining the correct answer is 1, let j be the integer so
that j/2
n
is the nearest integer multiple of 1/2
n
which is less than . Clearly,
(j + 1)/2
n
is the nearest integer multiple of 1/2
n
which is greater than . Again,
we let
0
= j/2
n
. Note that for the other nearest estimate (j + 1)/2
n
, we have

1
= (j + 1)/2
n
=
0
1/2
n
.
The probability of the phase estimation algorithm returning either

= j/2
n
or

= (j + 1)/2
n
is
P([[ <
1
2
n
) = P(

= j/2
n
) +P(

= (j + 1)/2
n
)
=
_
sin (2
n

0
)
2
n
sin
(2
n

0
)
2
n
_
2
+
_
sin (2
n

1
)
2
n
sin
(2
n

1
)
2
n
_
2

_
sin (2
n

0
)
(2
n

0
)
_
2
+
_
sin (2
n

1
)
(2
n

1
)
_
2
(by Corollary 3.4.3)
=
_
sin (2
n

0
)
(2
n

0
)
_
2
+
_
sin (2
n

0
1)
(2
n

0
1)
_
2
=
_
sin (2
n

0
)
(2
n

0
)
_
2
+
_
sin (2
n

0
)
(2
n

0
1)
_
2
. (sin
2
has period )
Since we know that 0
0
1/2
n
, we can establish a lower bound on the
CHAPTER 3. THE QFT AND PHASE ESTIMATION 32
probability P([[ <
1
2
n
) by establishing a lower bound for the function
_
sin x
x
_
2
+
_
sin x
(x 1)
_
2
=
sin
2
x

2
_
1
x
2
+
1
(x 1)
2
_
for x (0, 1). Shifting x by
1
2
, we see that this is equivalent to nding the minimum
of
f(x) =
cos
2
x

2
_
1
(x +
1
2
)
2
+
1
(x
1
2
)
2
_
=
cos
2
x

2
_
(x +
1
2
)
2
+ (x
1
2
)
2
(x
1
2
)
2
(x +
1
2
)
2
_
=
8 cos
2
x

2
_
4x
2
+ 1
(4x
2
1)
2
_
in the interval x (
1
2
,
1
2
).
At x = 0, we have f(x) =
8

2
. We will show that this is the minimum value,
and therefore, a lower bound for P([[ <
1
2
n
). First, note that since f(x) = f(x),
we may restrict our attention to the interval x [0,
1
2
).
Since cos
2
x = 1 sin
2
x 1 (x)
2
1 10x
2
, we have
f(x)
8(1 10x
2
)

2
_
4x
2
+ 1
(4x
2
1)
2
_
=
8

2
+
16x
2
(1 28x
2
)

2
(2x + 1)
2
(2x 1)
2
,
so that f(x)
8

2
has zeroes at
1
2

7
and 0. We can quickly see that we have
f(x)
8

2
on the interval x [0,
1
2

7
].
Now, since cos
2
x = sin
2
(x
1
2
) ((x
1
2
))
2

1
3
((x
1
2
))
4
, we have
f(x)
8

2
_

2
_
x
1
2
_
2


4
3
_
x
1
2
_
4
_
_
4x
2
+ 1
(4x
2
1)
2
_
=
_
2(2x 1)
2


2
6
(2x 1)
4
__
4x
2
+ 1
(4x
2
1)
2
_
CHAPTER 3. THE QFT AND PHASE ESTIMATION 33

_
2(2x 1)
2

10
6
(2x 1)
4
__
4x
2
+ 1
(4x
2
1)
2
_
=
_
2
10
6
(2x 1)
2
__
4x
2
+ 1
(2x + 1)
2
_
=
(4x
2
+ 1)(1 + 20x 20x
2
)
3(2x + 1)
2
.
Taking the derivative of
g(x) =
(4x
2
+ 1)(1 + 20x 20x
2
)
3(2x + 1)
2
,
we obtain
g

(x) =
8(2 9x + 30x
2
20x
3
40x
4
)
3(2x + 1)
3
.
It is easy to verify that this derivative has no zeroes in the range x [0,
1
2
), so that
g(x) is an increasing function on that range. It is also easy to verify that
g
_
1
2

7
_
=
16
3
1 + 5

7
_
7 +

7
_
2

8

2
,
so that f(x) g(x)
8

2
on the interval x [
1
2

7
,
1
2
). We have nally established
that
P
_
[[ <
1
2
n
_

2
.
3.5 Using Individual Trials in Phase Estimation
Griths and Niu [7] observed that the nal state of each of the n qubits, [x
p
),
1 p n, output from the inverse QFT (Figure 3.3) before measurement, depends
only on those qubits with higher indices, as they are the only qubits used as control
bits in the controlled phase rotation gates. Indeed, the last qubit, [x
n
), is obtained
independently of all the other qubits.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 34
Given this observation, Griths and Niu suggested a semiclassical version of
the quantum Fourier transform circuit in which the output of the inverse QFT is
obtained one qubit at a time: starting with [x
n
), which can be computed without
using any of the other qubits. Proceeding one qubit at a time, we can then use
the results from measuring the previous qubits to classically determine whether a
particular phase rotation gate will be applied to the current qubit. We need to apply
only those phase rotation gates, rather than applying a collection of controlled phase
rotation gates and letting the control qubits determine whether a phase rotation will
be applied using quantum-mechanical eects. Surprisingly, replacing the controlled
phase rotation gates with a classical process does not aect the output of the inverse
QFT, in that the probability of any particular answer being output by the inverse
QFT is the same as the probability of that answer being output by the individual
trials.
To see why this particular property of quantum entanglement is true, consider
a controlled quantum gate c U which applies the operator U to a register [
2
),
depending on the state of the control qubit [
1
) =
0
[0) +
1
[1). If we apply the
controlled-U gate, we obtain
c U([
1
) [
2
)) =
0
[0) [
2
) +
1
[1) U [
2
) .
If we are given that the measured value of the control qubit is 0, then the conditional
probabilities for the measured values of the second register are the same as the
probabilities for the measured values of [
2
). Likewise, if we are given that the
measured value of [
1
) is 1, then the conditional probabilities for the measured
values of the second register are the same as the probabilities for the measured
values of U [
2
). In other words, the conditional probabilities are identical to the
probabilities we would obtain if we simply measured [
1
) rst and decided whether
or not to apply U based on the result of that measurement.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 35
[u)
H
U
2
n1
H
Trial 2
H H
H H
H H
x
x
x
x
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Trial 1
[0)
[0)
U
2
n2
Trial 3
[0)
U
2
n3
Trial n
[0)
U
[x
n
)
[b
x1
) R
.0xn
R
.0x
n1
xn
[b
x2
)
R
.0x
2
x
3
...xn
[x
1
)
[u) [u)
[u) [u)
[u)
[u)
[u)
Figure 3.4: QFT-based phase estimation divided into individual trials
CHAPTER 3. THE QFT AND PHASE ESTIMATION 36
Now, in the rst half of the quantum phase estimation circuit (Figure 3.2), each
of the n qubits in the input register is independent from any of the other qubits
in the input register. Since the inverse QFT can be separated into a sequence of
individual semiclassical circuits for each qubit, and since each qubit input into the
inverse QFT can be generated independently of the state of any other input qubits,
the entire QFT-based phase estimation algorithm can be separated into a sequence
of individual semiclassical trials which share only the eigenstate [u). Also, since
the eigenstate [u) is not altered by the controlled-U operation, it may be reused for
each individual trial. An example of such a sequence of individual trials is shown
in Figure 3.4. For any binary fraction b, R
b
represents a phase rotation gate which
shifts the phase by an angle of 2b.
Separating the quantum phase estimation algorithm into a sequence of indi-
vidual trials has many advantages. First of all, the individual trials are much
easier to implement physically than implementing the entire phase estimation cir-
cuit all at once: fewer quantum gates need to be applied to each qubit, reducing
the probability of errors. Instead of each qubit undergoing a series of controlled
phase rotation gates, only the required phase rotation gates are now applied. Also,
since the controlled phase rotation gates are replaced by single-qubit phase rotation
gates, the need for quantum gates that act on more than one qubit is now limited
to the controlled-U gates. This further simplies the circuit, making it easier to
implement and less error-prone. Finally, as the phase estimation procedure is now
divided into a sequence of n independent computations, there is greater exibility
in using the algorithm multiple times to obtain more accurate results, as we are
now able to repeat trials individually instead of repeating the entire algorithm.
It should be noted that we have increased the number of measurements required
by a factor of n. However, each measurement is done on a single qubit rather than
CHAPTER 3. THE QFT AND PHASE ESTIMATION 37
on a quantum register of n qubits. Although it is expected that dividing the task
of measuring an n-qubit register into one-qubit states does not require much more
eort, this may not be the case for certain physical implementations of quantum
computers. In these cases, however, the number of measurements still increases by
only a polynomial factor.
3.6 Analysis of Individual Trials
Since we intend to take advantage of the added exibility that comes with separat-
ing the quantum phase estimation algorithm into individual trials, it is useful to
establish the probability of error for each trial individually, even though we have
already established the probability of obtaining a global error of = j/2
n
as
P(

= j/2
n
) =
_
sin (2
n
)
2
n
sin
_
2
in Section 3.4.
Let x = x
1
x
2
. . . x
n
be the binary value so that x/2
n
= (0.x
1
x
2
. . . x
n
) is the
binary representation of the nearest n-bit estimate of , or either nearest estimate
in case of a tie. Let = x/2
n
, and let j = j
1
j
2
. . . j
n
be the binary value output
by the quantum phase estimation algorithm, so that j/2
n
= (0.j
1
j
2
. . . j
n
) is the
given n-bit value which the quantum phase estimation actually returns. Let d =
d
1
d
2
. . . d
n
be the binary representation of xj, where the subtraction is considered
modulo 2
n
and reduced so that 0 d < 2
n
. As before, let = j/2
n
= +d/2
n
represent the total error between the actual phase and the phase estimate. Note
that since e
2i
= 1, we have
e
2i(2
p
x)
= e
2i(x
1
x
2
...xp.x
p+1
...xn)
= e
2i(0.x
p+1
...xn)
.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 38
Finally, let

p
represent the estimate of the p-th bit of obtained from the corre-
sponding individual trial.
Consider the trial for the least signicant qubit, [x
n
), which is computed rst.
We would like to compute the probability that

n
= j
n
, recalling that the correct
value, if

is to be the nearest estimate, should be x
n
. The rst half of the quantum
phase estimation circuit for this individual trial prepares a qubit in the state
1

2
_
[0) +e
2i(2
n1
)
[1)
_
=
1

2
_
[0) +e
2i((0.jn)+2
n1
)
[1)
_
.
The inverse QFT applies a Hadamard gate to this state to yield
1 +e
2i((0.jn)+2
n1
)
2
[0) +
1 e
2i((0.jn)+2
n1
)
2
[1) ,
which, since 1 = e
2i(0.1)
, can be rewritten as
1 +e
2i((0.jn)+2
n1
)
2
[0) +
1 +e
2i((0.1)+(0.jn)+2
n1
)
2
[1) .
So, independent of whether j
n
is 0 or 1, the nal measurement of the n-th qubit
yields j
n
with probability
P(

n
= j
n
) =

1 +e
2i((0.jn)+(0.jn)+2
n1
)
2

2
=

1 +e
2i(2
n1
)
2

2
(since (0.j
n
) + (0.j
n
) = 1)
= cos
2
2
2
n
. (by Lemma 3.4.1)
For the next least signicant qubit, [x
n1
), we would like to compute the con-
ditional probability P(

n1
= j
n1
[

n
= j
n
). The rst half of this individual trial
prepares a qubit in the state
1

2
_
[0) +e
2i(2
n2
)
[1)
_
=
1

2
_
[0) +e
2i((0.j
n1
jn)+2
n2
)
[1)
_
.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 39
The inverse phase rotation gate R
1
2
, which is applied only if j
n
= 1, shifts the
phase of [1) by (0.0j
n
), giving us the state
1

2
_
[0) +e
2i((0.j
n1
jn)(0.0jn)+2
n2
)
[1)
_
=
1

2
_
[0) +e
2i((0.j
n1
)+2
n2
)
[1)
_
so that, in a fashion similar to the rst individual trial for [x
n
), we nd that
P(

n1
= j
n1
[

n
= j
n
) = cos
2
(2
n2
) = cos
2
_

2
2
n1

_
.
In general, for the individual qubit trial for [x
p
), we prepare a qubit in the state
1

2
_
[0) +e
2i(2
p1
)
[1)
_
=
1

2
_
[0) +e
2i((0.jp...j
n1
jn)+2
p1
)
[1)
_
,
which is phase-shifted by (0.0j
p+1
j
p+2
. . . j
n
) by the selective application of some
of the inverse phase rotation gates R
1
2
, R
1
3
, . . ., R
1
np+1
to yield the state
1

2
_
[0) +e
2i((0.jp)+2
p1
)
[1)
_
.
Given this state, the probability, P
p
, of the quantum phase estimation algorithm
getting the correct value for the individual trial for [x
p
), given that the algorithm
has output only the values j
n
, j
n1
, . . . , j
p+1
so far, is
P
p
= P(

p
= j
p
[

n
= j
n
,

n1
= j
n1
, . . . ,

p+1
= j
p+1
)
= cos
2
_

2
2
p

_
.
From this analysis, we can also see that in general, if we start with the state
1

2
_
[0) +e
2i((0.jp)+t)
[1)
_
for any t, 0 t < 1, apply a Hadamard gate, and perform a measurement, we will
obtain [j
p
) with probability cos
2
t.
CHAPTER 3. THE QFT AND PHASE ESTIMATION 40
We can now express the probability of getting j/2
n
= (0.j
1
j
2
. . . j
n
) as the output
of the phase estimation algorithm given that the actual phase is , as
P(

= j/2
n
) = P
n
P
n1
. . . P
1
=
n

p=1
cos
2

2
(2
p
).
This expression can be further reduced by using the following lemma:
Lemma 3.6.1 For any integer n 1,
n

p=1
cos
2

2
p
=
_
sin
2
n
sin

2
n
_
2
Proof We proceed by induction.
For n = 1, we have
cos
2

2
=
_
sin
2 sin

2
_
2
,
which follows immediately from the double angle formula. Now, suppose that for
a xed value of n, we have
n

p=1
cos
2

2
p
=
_
sin
2
n
sin

2
n
_
2
.
Then
n+1

p=1
cos
2

2
p
=
_
sin
2
n
sin

2
n
_
2
cos
2

2
n+1
=
_
sin cos

2
n
+1
2
n
sin

2
n
_
2
=
_
sin cos

2
n
+1
2
n
2 sin

2
n+1
cos

2
n+1
_
2
=
_
sin
2
n+1
sin

2
n+1
_
2
,
CHAPTER 3. THE QFT AND PHASE ESTIMATION 41
and we are done.
Finally, we may verify that the phase estimation algorithm consisting of in-
dividual semiclassical trials is indeed equivalent to the inverse QFT-based phase
estimation algorithm by demonstrating that the probability of obtaining any par-
ticular output j/2
n
= (0.j
1
j
2
. . . j
n
) given an actual phase of is the same for both
algorithms.
Letting = 2
n
in Lemma 3.6.1, we have
P(

= j/2
n
) =
n

p=1
cos
2

2
(2
p
).
Reversing the indexing of the product, we get
P(

= j/2
n
) =
n

p=1
cos
2

2
(2
n+1p
)
=
n

p=1
cos
2
(2
n
)
2
p
=
_
sin 2
n

2
n
sin
_
2
,
when ,= 0. In the other case, when = 0, we have
P(

= j/2
n
) =
n

p=1
cos
2
(2
n
)
2
p
=
n

p=1
cos
2
0 = 1.
This is consistent with the analysis of the QFT-based phase estimation algorithm
in Section 3.4, where the phase estimation circuit is not divided into individual
trials.
Chapter 4
The Approximate Quantum
Fourier Transform
The idea of an approximate quantum Fourier transform was rst introduced by Don
Coppersmith [5], who proposed that if the QFT could be sped up at the expense of
the accuracy of the algorithm, the trade-o may yield an improvement in the phase
estimation algorithm. This trade-o would increase the number of times the QFT
was used to achieve a certain level of accuracy, but also reduce the complexity of
each application of the QFT.
The AQFT addresses a number of issues with the QFT as it is used in the phase
estimation algorithm. The most important issue is that using the QFT requires the
ecient physical implementation of the series of phase rotation gates, R
m
.
1
The
AQFT is also a natural generalization of both the QFT-based phase estimation
1
Since this set of gates is innite, the Solovay-Kitaev theorem does not apply, i.e., there is no
upper bound on the number of gates required to implement each successive phase rotation gate,
R
m
.
42
CHAPTER 4. THE APPROXIMATE QFT 43
[u)
H H
H
H
H
x
x
x
x
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
[0)
[0)
[0)
[0)
[u)
H
H
H
U
2
U
2
n1
U U
2
2
[x
n
)
[x
3
)
[x
2
)
[x
1
)
Figure 4.1: AQFT
1
: Kitaevs circuit for solving the phase estimation problem
algorithm discussed in Chapter 3 and Kitaevs phase estimation algorithm, which
will be introduced in the following section.
4.1 Kitaevs Algorithm and Variations
Kitaev originally developed a phase estimation algorithm as a component of an algo-
rithm to solve the Abelian Stabilizer problem[9], which will be discussed in Chapter
6. Kitaevs phase estimation algorithm is similar in structure to the QFT-based
phase estimation algorithm, but does not perform any phase rotation operations.
As in the rst half of the QFT-based phase estimation algorithm, a register con-
taining the state
[) =
([0) +e
2i(2
n1
)
[1)) ([0) +e
2i(2
1
)
[1)) ([0) +e
2i(2
0
)
[1))

2
n
CHAPTER 4. THE APPROXIMATE QFT 44
is prepared. However, instead of applying the inverse QFT circuit, Kitaevs algo-
rithm applies the n-qubit Hadamard gate to this register, which is essentially a
1-qubit Hadamard gate applied to each qubit in the register. In general, applying
the Hadamard gate to a qubit in the state
1

2
([0) + e
2i
[1)), for [0, 1), yields
the state
1 +e
2i
2
[0) +
1 e
2i
2
[1)
which, if measured, yields 0 with probability cos
2
, and 1 with probability sin
2
,
by Lemma 3.4.1. In other words, a measurement of 0 indicates that is more likely
to be closer to 0 (modulo 1), while a measurement of 1 indicates that is more
likely to be closer to
1
2
(modulo 1).
2
Since for each integer p, 1 p n, the rst half of Kitaevs algorithm prepares
a qubit in the state
1

2
([0) + e
2i(2
p1
)
[1)), the measurements obtained from the
entire algorithm do not correspond directly to the values of 2
pi
as they did for the
QFT-based phase estimation algorithm. In Kitaevs original algorithm, as given in
[9], each trial is repeated a number of times to obtain the ratio of measurements
resulting in [0) to measurements resulting in [1). This ratio is used as an estimate
for the fractional part of 2
pi
. We require O(n) measurements of each trial to
achieve a given xed error tolerance.
However, we may also consider a reduced version of Kitaevs algorithm, where
we do not require that the trials be repeated in this manner. Instead, we take

to
be the maximum likelihood estimate (MLE) of . The remainder of the analysis in
this chapter will refer to the reduced version given here.
Given a particular set of measurements, x
1
, x
2
, . . . x
n
, obtained from the quan-
2
In this context, modulo 1 simply refers to the fractional part of a quantity, i.e., |.
Distances modulo 1 are computed circularly, so that 9/10 is closer to 0 than it is to 1/2, for
example.
CHAPTER 4. THE APPROXIMATE QFT 45
tum circuit used in Kitaevs algorithm, which we will call AQFT
1
, the likelihood
function of , L(), is dened as the probability of the AQFT
1
circuit obtaining
that particular set of measurements given that the initial phase associated with the
unitary operator U and the eigenstate [u) is . The MLE is simply the value

which maximizes L(). The advantage of using the MLE is that it is the estimator
of minimum variance which, in eect, means that it minimizes the expected error.
Note that the output of the QFT-based phase estimation algorithm is eectively
equivalent to the MLE, as the output of the inverse QFT coincides with the input
phase angle of highest likelihood.
To compute the MLE, we begin by dening P(, X) to be the probability of
obtaining the result X = (x
1
, x
2
, . . . , x
n
) with the AQFT
1
circuit given the initial
phase . Like the QFT-based phase estimation algorithm, the AQFT
1
circuit can be
considered as a collection of individual trials, corresponding to each output bit, x
p
,
1 p n. The trial corresponding to x
p
prepares the state
1

2
([0) +e
2i(2
p1
)
[1)),
applies a Hadamard gate and then a measurement, giving us the answer 0 with
probability cos
2
2
p1
, and the answer 1 with probability sin
2
2
p1
. Equiva-
lently, we may also say that the probability of obtaining a given output bit x
p
is
cos
2
2
(2
p
+x
p
).
Since the n individual trials in AQFT
1
are independent of each other, the prob-
ability of obtaining a particular result X = (x
1
, x
2
, . . . , x
n
) given an initial phase
of is
P(, X) =
n

p=1
cos
2

2
(2
p
+x
p
).
Now, we would like to nd the value of which maximizes P(, X) for a given
value of X = (x
1
, x
2
, . . . , x
n
).
In general, it would be dicult to nd the global maxima of such functions
CHAPTER 4. THE APPROXIMATE QFT 46
1 0.8 0.6 0.4 0.2 0
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Figure 4.2: P(, (0, 1, 1, 1, 0))
analytically, since given the results of n individual trials, P(, X) is a non-negative
function with at least 2
n1
zeroes, and since cos
2
2
(2
n
+x
n
) is a factor of P(, X),
thus having at least 2
n1
local maxima. However, it is possible to obtain the MLE
numerically by taking advantage of some of the properties of P(, X). If we assume
that the results of the individual trials, X, actually contain information about ,
then we should expect P(, X) to have a few large maxima and many smaller
maxima, such as the example in Figure 4.2.
Given a function of the form
P(, X) =
n

p=1
cos
2

2
(2
p
+x
p
),
suppose that we can nd a small function,
P
2
(, X) =

cos

2
(2
n
+x
n
)

so that P(, X) P
2
(, X) whenever ([0, 1] I), where I is a small collection
CHAPTER 4. THE APPROXIMATE QFT 47
1 0.8 0.6 0.4 0.2 0
0.35
0.3
0.25
0.2
0.15
0.1
0.05
0
Figure 4.3: P(, (0, 1, 1, 1, 0)), with P
2
=
1
10

cos

2
(2
5
)

of intervals of the form [


r
2
n1
,
r+1
2
n1
), where r is an integer such that 0 r < 2
n1
.
Then we may restrict our search for global maxima to those intervals in I, so long
as these global maxima are larger than .
Finding such a representation may be done recursively, by rst nding a repre-
sentation of the function
P(, X
n1
) =
n1

p=1
cos
2

2
(2
p
+x
p
),
where X
p
represents the results of the rst p individual trials, X
p
= (x
1
, x
2
, . . . , x
p
),
obtaining
P
2
(, X
n1
) =
n1

cos

2
(2
n1
+x
n1
)

,
and a set of intervals, I
n1
. With such a representation, to nd a suitable P
2
(, X),
it is sucient to nd an such that
P
2
(, X) =

cos

2
(2
n
+x
n
)

CHAPTER 4. THE APPROXIMATE QFT 48


P
2
(, X
n1
) cos
2

2
(2
n
+x
n
)
=
n1

cos

2
(2
n1
+x
n1
)

cos
2

2
(2
n
+x
n
)
so that we have
P(, X) = P(, X
n1
) cos
2

2
(2
n
+x
n
)
P
2
(, X
n1
) cos
2

2
(2
n
+x
n
)
P
2
(, X)
for all ([0, 1] I
n1
).
However, substituting = 2
n1
, we see that this task is equivalent to nding
so that

n1

cos

2
(2 +x
n
)

cos

2
( +x
n
)

cos
2

2
(2 +x
n
).
The ratios

n1
may be precomputed. We can extend this idea of building recur-
sively using precomputed constants by nding constants

nm
which relate P(, X
n
)
to P(, X
nm
) for any integer m up to a preset upper bound. If we set the upper
bound of m to be O(log n), then precomputing the ratios

nm
for all possible com-
binations of the bits x
nm
, x
nm+1
, . . . , x
n
will be a polynomial-time computation
with respect to n.
Once we obtain a new , we must also update the set of intervals, I. Note that
each interval in the collection I
n1
gives us two intervals in I, since each interval
in I is half the size of an interval in I
n1
. However, we may check each interval
in I
n1
and discard those which are no longer necessary. In other words, for each
interval in I, we can check to see if P(, X) P
2
(, X), and discard it if it is. If
the amount of information about embedded in results of the AQFT
1
circuit are
sucient to distinguish to within a small number of values, then we would expect
the number of intervals in the collection I to remain small.
CHAPTER 4. THE APPROXIMATE QFT 49
R
0.01
H H
x
[0)
[) [) U
[x
0
)
Figure 4.4: Additional trial for distinguishing and 1
To start o this recursive procedure, we pick a threshold T = O(log n) and
compute the rst
T
using numerical methods. For each interval [
r
2
T
,
r+1
2
T
), we get a
lower bound on
T
to guarantee that we have P(, X
T
) P
2
(, X
T
) on that interval.
We ignore the highest O(log n) of these lower bounds, adding the corresponding
intervals to the collection I, and take the next highest lower bound as
T
. If we
select a value of T that is too small, then at some point during the algorithm, the
set I will become empty. This means that we no longer have sucient information
about P(, X) to nd the maximum. To x this problem, we need to restart the
algorithm with a larger value of T.
Finally, note that since cos
2
2
(2
p
+x
p
) is always an even function, the individual
trials used in the AQFT
1
circuit cannot distinguish between the values and 1.
As a result, the function P(, X) will have two global maxima, resulting in two
MLEs. In order to distinguish which of the two possible values is the correct value
of , we perform one additional individual trial, in which a phase rotation of /2 is
applied before the nal Hadamard gate and measurement, as in Figure 4.4. With
this phase rotation, the intermediate state
1

2
([0) +e
2i
[1))
is transformed into the state
1

2
([0) +e
2i(+
1
4
)
[1)),
CHAPTER 4. THE APPROXIMATE QFT 50
1 0.8 0.6 0.4 0.2 0
0.3
0.25
0.2
0.15
0.1
0.05
0
Figure 4.5: cos
2
2
(2 +
1
2
) P(, (0, 1, 1, 1, 0))
and becomes
1 +e
2i(+
1
4
)
2
[0) +
1 e
2i(+
1
4
)
2
[1)
when the last Hadamard gate is applied. Upon measurement, we obtain 0 with
probability cos
2
( +
1
4
), and 1 with probability sin
2
( +
1
4
). Equivalently, we
may say that we obtain the output bit x
0
with probability cos
2
2
(2 +
1
2
+x
0
). Note
that the probabilities we obtain when we set = and when we set = 1
are necessarily dierent, unless = 0, in which case and 1 are equivalent
(modulo 1). This allows us to distinguish between these two possibilities.
We can also easily incorporate this additional individual trial into the calcu-
lation of the MLE by including a factor of cos
2
2
(2 +
1
2
+ x
0
) when computing
the probability function for obtaining the observed result given a particular set of
measurements. For example, in Figure 4.5, the probability function is given for the
same set of measurements as in Figure 4.2, but with an additional measurement
CHAPTER 4. THE APPROXIMATE QFT 51
[0) +e
2i(0.x1x2...xm)
[1) H R
2
H
H R
2
H
v
v
v
v v
v
......
.
.
.
.
.
.
.
.
.
.
.
.
.
.
......
......
......
......
......
...... ......
......
.
.
.
.
.
.
.
.
.
.
.
.
.
.
R
m1
R
m
R
m1
R
m
[x
1
)
[x
2
)
[x
n1
)
[x
n
) [0) +e
2i(0.xn)
[1)
[0) +e
2i(0.xn1xn)
[1)
[0) +e
2i(0.x2...xm+1)
[1)
Figure 4.6: A quantum circuit implementing the AQFT
for the extra trial, which gives us a clear global maximum for the MLE.
4.2 The Approximate QFT
From the point of view of building quantum circuits, the approximate quantum
Fourier transform is a simple and elegant solution to the problem of eciently and
accurately implementing the smallest phase rotation gates required by the QFT.
Instead of performing all phase rotations R
p
that are used in the QFT algorithm,
we set a lower limit on the amount of phase shifted by any particular gate and
ignore any phase rotation gates that do not shift by at least that amount. In other
words, given a positive integer threshold, m, we will dene the approximate QFT
circuit AQFT
m
to be the circuit formed from the QFT, except that phase rotation
gates R
p
are ignored whenever we have m > p.
Although the approximate quantum Fourier transform is simple to describe as
a quantum circuit, it is also useful to have a closed-form classical expression for the
operation. We can start by observing that while the QFT outputs the state
_
[0) +e
2i(0.xn)
[1)
_

_
[0) +e
2i(0.x
n1
xn)
[1)
_

_
[0) +e
2i(0.x
1
x
2
...xn)
[1)
_

2
n
CHAPTER 4. THE APPROXIMATE QFT 52
when given the n-qubit basis state [x) = [x
1
x
2
. . . x
n
) as input, the approximate
QFT outputs the state
_
[0) +e
2i(0.xn)
[1)
_

_
[0) +e
2i(0.x
2
x
3
...x
m+1
)
[1)
_

_
[0) +e
2i(0.x
1
x
2
...xm)
[1)
_

2
n
,
where any phase rotation smaller than 2i(2
m
) is ignored altogether so that each
of the binary fractions is truncated at the m-th fractional bit.
Now, consider the state [k) where 0 k 2
n
1, and let k
n1
. . . k
1
k
0
be
the binary representation of k. Then, if we dene x
p
= 0 for convenience when-
ever p > n, we can express the probability amplitude of [k) in the output state
AQFT
m
([x
1
x
2
. . . x
n
)) as
n1

p=0
e
2ikp(0.x
p+1
x
p+2
...x
p+m
)
= exp
_
n1

p=0
2ik
p
(0.x
p+1
x
p+2
. . . x
p+m
)
_
= exp
_
n1

p=0
2ik
p
_
m

r=1
x
p+r
2
r
__
= exp
_
2i
m

r=1
n1

p=0
k
p
x
p+r
2
r
_
= exp
_
2i
m

r=1
n+r1

q=r
k
qr
x
q
2
r
_
.
But since x
q
= 0 whenever q > n, this can be rewritten as
exp
_
2i
m

r=1
n

q=r
k
qr
x
q
2
r
_
,
so that we have
AQFT
m
([x)) =
1

2
n
2
n
1

k=0
exp
_
2i
m

r=1
n

q=r
k
qr
x
q
2
r
_
[k) .
Now, observe that AQFT
n
should be equivalent to the circuit QFT, as no phase
rotation gates are removed to make this approximate QFT circuit. So, we would
CHAPTER 4. THE APPROXIMATE QFT 53
expect that if we substitute m = n into the expression we derived for AQFT
m
([x))
we should obtain the value of QFT([x)) given in Section 3.2. To see this, we will
express the Fourier transform in terms of the binary representations of j and k.
First take the discrete Fourier transform for N = 2
n
,
QFT([x)) =
1

2
n
2
n
1

k=0
exp
_
2ikx
2
n
_
[k) .
Letting k
n1
k
n2
. . . k
1
k
0
and 0.x
1
x
2
. . . x
n
be the binary representations of k and
x/2
n
, respectively, we have the product
kx
2
n
= k
x
2
n
=
n1

p=0
n

q=1
k
p
x
q
2
pq
,
obtaining
QFT([x)) =
1

2
n
2
n
1

k=0
exp
_
2i
n1

p=0
n

q=1
k
p
x
q
2
pq
_
[k) ,
and since integer multiples of 2i do not aect the exp function, we can ignore any
terms where p q to get
QFT([x)) =
1

2
n
2
n
1

k=0
exp
_
2i
n1

p=0
n

q=p+1
k
p
x
q
2
pq
_
[k)
=
1

2
n
2
n
1

k=0
exp
_
2i
n

r=1
n

q=r
k
qr
x
q
2
r
_
[k)
= AQFT
n
([x)).
On the other end, the approximate QFT circuit AQFT
1
is simply the n-qubit
Hadamard transform, as it is the result of stripping all phase rotation gates from
a QFT circuit. This is the circuit used in algorithms in Section 4.1 above, without
the extra trial used to distinguish between eigenvalues and 1 is not present
in AQFT
1
.
CHAPTER 4. THE APPROXIMATE QFT 54
For approximate QFT circuits between these two extremes, the arguments for
using the method of nding maximum likelihood estimates given in Section 4.1 still
hold. However, this is not inconsistent with the analysis of the QFT circuit given in
Chapter 3, since the QFT circuit is simply the m = n case of the AQFT
m
circuit.
The MLE in the AQFT
n
case always coincides with the binary string obtained
upon measurement, so long as we assume that the phases that are input into the
algorithm, , are uniformly distributed between 0 and 2. This is a consequence of
Bayes Theorem, which states that
P(B[A) =
P(B)P(A[B)
P(A)
.
We can take A to be the probability of measuring a particular value, j/2
n
, and
B to be the probability that

is the multiple of 2
n
nearest to the actual value
of . The assumption that answers to phase estimation problems are uniformly
distributed implies that P(A) and P(B) are constants with respect to n, j and ,
so that P(B[A) is proportional to P(A[B). This means that the value of

that
maximizes P(A[B) is also the one that maximizes P(B[A), which is the probability
that j/2
n
is measured given a xed value for . Thus, we may nd maximum
likelihood estimates

by nding values of for which j/2
n
is the most probable
measured output. In Chapter 3, we showed that the probability of measuring a
particular value j/2
n
at the end of the QFT circuit is
P() =
_
sin (2
n
)
2
n
sin
_
2
=
n

p=1
cos
2

2
(2
p
),
where = j/2
n
is the dierence between the correct value and the measured
value. When = 0, the probability given by the right-hand expression is 1, which
is also the limit of the left-hand expression as approaches 0, since
lim
0
_
sin (2
n
)
2
n
sin
_
2
= lim
0
_
sin (2
n
)
(2
n
)
_
2
_

sin
_
2
= 1 1 = 1.
CHAPTER 4. THE APPROXIMATE QFT 55
Since P() cannot exceed 1, = 0 gives us a maximum likelihood estimate for .
To show that the maximum likelihood estimate is unique in this case, consider all
values of (
1
2
,
1
2
] such that
n

p=1
cos
2

2
(2
p
) = 1.
In order for this to be true, we must have cos
2
2
(2
p
) = 1 for each integer p from 1
to n. Specically, for p = 1, the only value of for which cos
2
= 1 is = 0. This
means that our likelihood function achieves its maximum value only when = 0,
and that the QFT-based phase estimation algorithm does indeed return the only
maximum likelihood estimate.
4.3 Analysis of the Approximate QFT
As with the regular QFT circuit, we may perform an approximate QFT as a series
of individual trials. In the AQFT
m
circuit, given a phase for which we are to
nd an approximation

= 0.x
1
x
2
. . . x
n
, the individual trial for bit x
p
starts by
preparing the state [0) + e
2i(2
p1
)
[1). It then performs a phase rotation which
multiplies the probability amplitude of the state [1) by a factor of e
2ip
, where

p
is the phase rotation which corresponds to the amount performed by the QFT
circuit, (0.0x
i+1
x
i+2
. . . x
n
), but without any phase rotations which are smaller than
the given threshold m. So, we have
p
= (0.0x
p+1
. . . x
p+m1
) for the x
p
where
p n m, and
p
= (0.0x
p+1
. . . x
n
) otherwise.
We would now like to determine the probability that the output of the AQFT
m
circuit,

= (0.x
1
x
2
. . . x
n
), is the nearest integer multiple of 1/2
n
when interpreted
directly as a binary fraction, as we did for the QFT = AQFT
n
circuit. In Section
3.6, we established that given a state of the form [0) + e
2i((0.xp)+p)
[1), applying
CHAPTER 4. THE APPROXIMATE QFT 56
[x
1
) H
H
H
w
w
w
w w
w
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
......
......
...... ......
......
......
......
......
......
R
1
2
R
1
2
[0) +e
2i(2
0
)
[1)
[0) +e
2i(2
n1
)
[1)
[0) +e
2i(2
n2
)
[1)
[0) +e
2i(2
1
)
[1) H R
1
m
R
1
m1
R
1
m
R
1
m1
[x
n
)
[x
n1
)
[x
2
)
Figure 4.7: The second half of the AQFT-based quantum phase estimation circuit
the Hadamard gate, and measuring, yields [x
p
) with probability cos
2
(
p
). For the
AQFT
m
circuit, determining bounds for error amount
p
requires looking at the
two cases separately.
In the rst case, where we have p + m 1 < n and
p
= (0.0x
p+1
. . . x
p+m1
)
for the individual trial that computes bit x
p
,
p
will include the phase rotation
amount that was not applied by the AQFT
m
trial that would have been applied by
the corresponding QFT trial, and the dierence between and its nearest integer
estimate, amplied by a factor of 2
p
by the AQFT
m
circuit. In other words, we
have

p
= 2
m
(0.x
p+m
x
p+m+1
. . . x
n
) + 2
p1
,
where =

. Since we are assuming that

is the nearest estimate of , we also
have 2
pn1
2
p1
2
pn1
. Now, since (0.x
p+m
. . . x
n
) reaches its minimum
value when all the bits are 0, and its maximum value when all its bits are 1, we
have
0 2
m
(0.x
p+m
. . . x
n
) 2
m
(1 2
p+mn1
) = 2
m
2
pn1
.
Adding the two inequalities together, we obtain 2
m
< 2
n1

p
2
m
. This
means that in the individual trial for bit x
p
, the nal measurement would yield [x
p
)
CHAPTER 4. THE APPROXIMATE QFT 57
with a probability of at least cos
2
(2
m
) in this case.
In the second case, where p nm+1, the individual bit trials are identical to
their counterparts in the QFT circuit, and so the same lower bound for the error
probability of cos
2
(

2
2
p
) applies. Since [[ 2
n1
, we have an error probability
lower bound of cos
2
(

2
2
pn1
). As with the regular QFT circuit, the probability P
of getting the correct output with the AQFT
m
circuit is simply the product of each
individual bit trial being correct. Putting these lower bounds together, we can give
a lower bound for P:
P = P
n
P
n1
. . . P
1

p=nm+1
cos
2
_

2
2
pn1
_
nm

p=1
cos
2
(2
m
)
=
_
sin

2
2
m
sin
/2
2
m
_
2
_
cos
2
(2
m
)
_
nm
=
_
1
2
m
sin
/2
2
m
_
2
_
cos
2
(2
m
)
_
nm

_
1
/2
_
2
_
cos
2
(2
m
)
_
nm
=
4

2
_
cos
2
(2
m
)
_
nm
.
It is clear that if m grows too slowly in comparison to n, then the expression
will approach 0 asymptotically as n approaches , making this bound useless.
Therefore, we would like to have a lower bound in terms of n for the values of m
which would make this bound non-trivial. Suppose that m log
2
n + 2, so that
2
m
4n. Then, we would have
4

2
_
cos
2
(2
m
)
_
nm

2
_
cos
2
_

4n
__
nm

2
_
cos
2
_

4n
__
n
.
CHAPTER 4. THE APPROXIMATE QFT 58
Using lHopitals rule, we may evaluate the limit of this expression as n tends to
innity. We have
lim
n
4

2
_
cos
2
_

4n
__
n
= lim
n
4

2
exp
_
2nln cos
_

4n
__
= lim
n
4

2
exp
_
1
1/2n
ln cos
_

4n
_
_
= lim
n
4

2
exp
_
1
1/2n
2
_

4n
2
tan
_

4n
__
_
= lim
n
4

2
exp
_

2
tan
_

4n
__
=
4

2
exp
_

2
tan(0)
_
=
4

2
.
This means that asymptotically, for m log
2
n+2, the lower bound for the accuracy
of the AQFT
m
circuit approaches the lower bound for the accuracy of the full QFT.
This is signicant, since the full QFT on an n-qubit register requires implementing
phase rotation gates which are able to accurately adjust the relative phase of a
state by a factor of at least e
2i/2
n
. By the Solovay-Kitaev theorem, given a xed
universal set of quantum gates, implementing such a gate with accuracy on that
order requires at least O(n
2
) gates. Since the QFT circuit itself contains O(n
2
) such
gates, the total number of gates required becomes O(n
4
), which is unacceptable for
applications such as integer factorization, where values of n are typically above
1000. In the AQFT
m
circuit, the smallest phase rotation gate only needs to adjust
the relative phase of a state by a factor of e
2i/2
m
, meaning that we would require
O(m
2
) gates to implement it. When m log
2
n + 2, we have O(m
2
) = O(log
2
n).
In addition, since the AQFT
m
circuit uses only O(nm) gates, we have a total of
O(nlog nlog
2
n), which is much more feasible for practical applications. The fact
that this improvement is achieved with no signicant loss of accuracy indicates that
much larger applications of quantum phase estimation may be feasible.
CHAPTER 4. THE APPROXIMATE QFT 59
We can also establish a lower bound for P when we have m log
2
n + 2 for
some xed value of n, as an asymptotic bound gives no information about the value
of P for practical values of n. We have
P
4

2
_
cos
2
_

4n
__
nm
=
4

2
_
1 sin
2
_

4n
__
nm

2
_
1 (n m) sin
2
_

4n
__
,
using the Bernoulli inequality, which states that (1 +t)
c
1 +ct whenever t > 1
and c 0. Since x sin x when x 0, we have
P
4

2
_
1 (n m) sin
2
_

4n
__

2
_
1 (n m)
_

4n
_
2
_
=
4

2

1
4n
+
m
4n
2

2

1
4n
.
This indicates that even for smaller values of n, the probability of the AQFT
m
cir-
cuit returning the best estimate of is high enough to make it a practical alternative
to using the full QFT circuit.
Note that in the case of the regular QFT circuit, when we have m = n, we
obtain the same bound for P:
P
4

2

1
4n
+
m
4n
2
=
4

2
,
as the one established in Chapter 3. Also note that since we stipulated that m
log
2
n + 2, this result is only meaningful if n 4. This allows us to establish the
xed bound
P
4

2

1
16
CHAPTER 4. THE APPROXIMATE QFT 60
for AQFT
m
circuits where m log
2
n + 2.
Finally, we note that this result is much stronger than the bound of
P
8

2
sin
2
_
m
4n
_
previously established by Barenco, et al. in [2]. We can establish this from the
bound
P
4

2
_
1 (n m)
_

4n
_
2
_
.
Since
4

2

1
4n
for all n 4, we have
P
4

2
_
1 (n m)
_

4n
_
2
_
=
4

2
(n m)
1
4n
2

2
(n m)
4

2
n
=
4m

2
n
.
Consider
4m

2
n
as a real function of m, with n as a xed constant. We see that
on the interval m [0, n], it represents a linear function from (m, f(m)) = (0, 0) to
(m, f(m)) = (n,
4

2
). However, on the interval m [0, n], the function
8

2
sin
2
_
m
4n
_
is a convex function which shares the same two endpoints. Thus, we can conclude
that
4m

2
n

8

2
sin
2
_
m
4n
_
on the interval m [0, n], as desired. Furthermore, since we have
lim
n
8

2
sin
2
_
m
4n
_
= 0
when m is xed at log
2
n+2, it was not previously known that the AQFT
m
circuit
would perform so well for large n.
CHAPTER 4. THE APPROXIMATE QFT 61
4.4 An MLE for the Approximate QFT
Having a lower bound for the probability that the answer output by the AQFT
m
circuit is correct does not necessarily give any indication as to whether the output
is a good estimator for the value of . We also need to nd the MLE.
The analysis in the previous section suggests that when we have m log
2
n+2,
the MLE is very close to the value constructed directly from the output of the
inverse AQFT circuit. This section establishes this fact. In the other case, when
m < log
2
n + 2, nding the MLE would probably require analysis similar to the
post-processing algorithm used with the AQFT
1
circuit, as described in Section 4.1.
As before, let =

be the dierence between the actual value , and the
value output by the AQFT
m
circuit. Let P() be the likelihood of being the error
given that

is the output value. Then, the MLE of is

+

, where

is the value
of which maximizes P(). Again, let
p
be the error amount between the phase
amount in trial p, and the correct amount, (0.x
p
).
Since we are considering only the case when m log
2
n + 2, we may assume
that 2
m
4n, and that n 4. The likelihood of obtaining an error of is
P() =
n

p=1
P
p
(
p
)
=
nm

p=1
cos
2
(2
m
(0.x
p+m
. . . x
n
) + 2
p1
)
n

p=nm+1
cos
2
(2
p1
),
where each P
p
is the probability of the p-th individual trial returning the correct
answer given an error of in the phase rotation. From this, we have
P(0) =
nm

p=1
cos
2
(2
m
(0.x
p+m
. . . x
n
))
(cos
2
(2
m
))
nm
CHAPTER 4. THE APPROXIMATE QFT 62

_
cos
2
_

4n
__
nm
1

2
16n
(as in Section 4.3)
1

2
64
>
3
4
,
since n 4.
Now, we will show that P() P(0) whenever [[
1
2
n
. In general, we have
P() = P
n
()P
n1
()P
n2
() P
1
().
Specically, we have
P
p
() = cos
2
(2
m
(0.x
m+p
. . . x
n
) +2
p1
),
when 1 p n m, and
P
p
() = cos
2
(2
p1
),
when p > n m.
Consider the interval [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
] for 1 p n. When 1 p
n m, we have
P() P
p
()
= cos
2
(2
p1
+2
m
(0.x
m+p
. . . x
n
)).
In particular, since in the given interval, we have


1
2
p

1
2
p+1
,
we also have

+
2
m
(0.x
m+p
. . . x
n
)
2
p1

1
2
p

1
2
p+1
+
2
m
2
p1
,
CHAPTER 4. THE APPROXIMATE QFT 63
and so
P() cos
2
(2
p1
+2
m
(0.x
m+p
. . . x
n
))
= sin
2
_
2
p1
+2
m
(0.x
m+p
. . . x
n
) +

2
_
= sin
2
_
2
p1

+
2
m
(0.x
m+p
. . . x
n
))
2
p1

1
2
p

_
sin
2
_
2
p1

_
1
2
p+1
+
2
m
2
p1
__
= sin
2
_

4
+2
m
_
sin
2
_

4
+2
4
_
sin
2
_

3
_
=
3
4
.
When n m < p n, we have
P() cos
2
(2
p1
)
= sin
2
_
2
p1


1
2
p

_
= sin
2
_

4
_
=
1
2

3
4
.
We can derive a similar result for the intervals [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
].
As p ranges from 1 to n, the intervals [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
] cover all of
[
1
2
,
1
2
n+1
] [
1
2
n+1
,
1
2
], giving us the desired result.
We have now established that when m log
2
n+2 (and as a consequence n 4),
we have P()
3
4
< P(0) for all , (
1
2
n
,
1
2
n
). This means that the value

which
maximizes P() must be within the range

(
1
2
n
,
1
2
n
). In a sense, this means that
CHAPTER 4. THE APPROXIMATE QFT 64
the output value returned by the AQFT
m
circuit is close enough to the actual
MLE when m log
2
n + 2. In fact, the true MLE can be computed eciently
using numerical methods, given that it is within such a narrow range. However, in
practice, since the likelihood interval corresponding to the MLE occupies a good
part of the interval (
1
2
n
,
1
2
n
), the exact value of the MLE is unimportant.
Chapter 5
Generalized Phase Estimation
Algorithms
In the last chapter, we introduced the AQFT-based phase estimation algorithm
and established that the AQFT can still be eective without precise phase rotation
gates which the full QFT-based phase estimation requires. This indicates that it
should be possible to construct generic phase estimation algorithms with even more
exibility in using phase rotation gates. This chapter explores the class of phase
estimation algorithms that stems from this generalization of the AQFT.
5.1 A General Model for AQFT Circuits
The AQFT
m
circuit from Chapter 4 can be characterized in a way that suggests
a natural generalization. We consider the AQFT
m
circuit on an n-qubit register
as a sequence of n trials, T
n
, T
n1
, . . . , T
1
, where trial T
p
constructs the state [0) +
e
2i(2
p1
)
[1) and applies a phase rotation of e
2ip
, where
p
is a real number in
65
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 66
R
x
i
H H
x
[0)
[) [)
[b
i
)
Trial i
U
2
ni
Figure 5.1: A generalized individual trial T
p
the range [0, 1). In practice,
p
will be a function of the results of the previous
trials T
n
, . . . , T
p+1
and will attempt to adjust the prepared state so that it is as
close to [0) +e
2i(0.xp)
[1) as possible.
Specically, in the regular QFT circuit with individual trials, for trial T
n
, we
have
n
= 0, and for trial T
p
where p < n, we have
p
= 0.0x
p+1
x
p+2
. . . x
n
. With
AQFT
m
where 0 < m < n, we have
n
= 0 for trial T
n
,
p
= 0.0x
p+1
. . . x
n
for
trials T
p
where n m < p < n, and
p
= 0.0x
p+1
. . . x
p+m1
for trials T
p
where
p n m. For AQFT
1
, we have
p
= 0 for each trial T
p
.
In general, we may consider arbitrary values for
p
, and we may adapt the post-
processing algorithm used with the AQFT
1
circuit in order to obtain the maximum
likelihood estimate,

, as the output of the generalized phase estimation algorithm.
However, in Section 4.4, we showed that for m log
2
n + 2 the output of the
AQFT
m
circuit is essentially equivalent to the MLE. This chapter focuses primarily
on generalized AQFT circuits for which this property still holds.
In the AQFT
m
circuit, each of the phase rotation amounts required by the
full QFT,
p
= 0.0x
p+1
x
p+2
. . . x
n
, is approximated to within a certain tolerance,

p
. In the case of the AQFT
m
, we have
p
= 0 when n m < p n and
p
=
1
2
m

1
2
np+1
when p nm. However, we may also consider the general question of
implementing a quantum gate aecting a certain phase rotation within a tolerance
of
p
. Recall that the Solovay-Kitaev theorem, previously mentioned in Chapter
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 67
2, gives a construction that requires O(log
2+o(1)
(1/
p
)) gates drawn from a xed
universal set of quantum gates.
In the analysis of the AQFT in Section 4.3, we did not consider the eects of
errors originating from the individual rotation gates themselves. These errors can
be naturally incorporated into our generalized model as the constant tolerances
p
.
However, it is not acceptable in this model to have
p
= 0 as we do in the AQFT
m
circuit when n m < p n, since implementing a quantum rotation gate with
an error tolerance of 0 is not possible. To address this problem, we can relax each
tolerance in the AQFT
m
circuit to
p
=
1
2
m
. This relaxation will give us a lower
bound for the probability of success for any generalized AQFT algorithm such that
max
p

p
=
1
2
m
. In the next section, we show that this relaxation aects only the
probability of obtaining the correct answer as output by a constant factor relative
to the AQFT
m
, which can easily be compensated for. The proof of this fact is very
similar to the proof of the corresponding result for the AQFT
m
circuit given in
Section 4.4.
5.2 Analysis of the Generalized AQFT
We proceed in a similar manner to the analysis of the AQFT in Chapter 4. As in
Section 4.3, we take [0) + e
2i((0.xp)+p)
[1) to be the qubit state constructed by the
quantum circuit for individual trial p. If is the oset between the correct phase,
, and the measured phase,

, then we have
p
=
p
+ 2
p1
. The likelihood of
obtaining an error of is
P() =
n

p=1
cos
2
(
p
)
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 68
=
n

p=1
cos
2
(2
p1
+
p
).
We will start, as in Section 4.4, by giving a lower bound for P(0). We have
P(0) =
n

p=1
cos
2
(
p
)

_
cos
2
(2
m
)
_
n
1

2
16n

3
4
.
Now, we show that when , [
1
2
n+1
,
1
2
n+1
], we have P()
3
4
, which means
that the answer output by the generalized AQFT circuit is the integer multiple of
1
2
n
nearest to the maximum likelihood estimate of the phase amount

.
Consider the interval [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
] for 1 p n. We have
P() P
p
()
= cos
2
(2
p1
+
p
).
In particular, since


1
2
p

1
2
p+1
,
we have

+

p
2
p1

1
2
p

1
2
p+1
+
2
m
2
p1
,
and so
P() cos
2
(2
p1
+
p
)
= sin
2
_
2
p1
+
p
+

2
_
= sin
2
_
2
p1

+

p
2
p1

1
2
p

_
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 69
sin
2
_
2
p1

_
1
2
p+1
+
2
m
2
p1
__
= sin
2
_

4
+2
m
_
sin
2
_

4
+2
4
_
sin
2
_

3
_
=
3
4
.
We can derive a similar result for the interval [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
].
As p ranges from 1 to n, the intervals [
1
2
p

1
2
p+1
,
1
2
p
+
1
2
p+1
] cover all of
[
1
2
,
1
2
n+1
] [
1
2
n+1
,
1
2
], giving us the desired result.
Now, we need a lower bound on the probability of the answer output by the
generalized AQFT circuit being correct. We proceed in a similar manner to the
analysis in Section 4.3. This means nding a lower bound for P() when
[
1
2
n+1
,
1
2
n+1
].
We have
P() =
n

p=1
cos
2
(2
p1
+
p
)

p=1
cos
2
_
2
p1

1
2
n+1
+
1
2
m
_
=
n

p=1
cos
2
(2
m
+2
pn2
)

nm+2

p=1
cos
2
(22
m
)
n

p=nm+3
cos
2
(2
pn2
+2
m
)
=
_
cos
2
(2
m+1
)
_
nm+2
m2

q=1
cos
2
(2
q1
+2
m
)

_
cos
2

2n
_
n
m2

q=1
cos
2
(2
q1
+2
m
)
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 70

_
1 n
_

2n
_
2
_
m2

q=1
cos
2
(2
q1
+2
m
)

_
1

2
4n
_
m2

q=1
cos
2
(2
q1
+2
m
),
by using the Bernoulli inequality as in Section 4.3.
We can analyze the product
m2

q=1
cos
2
(2
q1
+2
m
)
using a method similar to the proof of Lemma 3.6.1. We show, by induction, that
for any integer k, 1 k m2, we have
k

q=1
cos
2
(2
q1
+2
m
)
sin
2
_

2
+2
m+1
_
_
2
k
sin
_
/2
2
k
+2
m
__
2
.
For k = 1, we have
cos
2
_

4
+2
m
_
=
sin
2
_

2
+2
m+1
_
_
2 sin
_
/2
2
+2
m
__
2
,
which follows immediately from the double angle formula. Now, suppose that for
some xed k such that k < m2, we have
k

q=1
cos
2
(2
q1
+2
m
)
sin
2
_

2
+2
m+1
_
_
2
k
sin
_
/2
2
k
+2
m
__
2
.
Then,
k+1

q=1
cos
2
(2
q1
+2
m
) = cos
2
(2
k2
+2
m
)
k

q=1
cos
2
(2
q1
+2
m
)
cos
2
(2
k2
+2
m
)
sin
2
_

2
+2
m+1
_
_
2
k
sin
_
/2
2
k
+2
m
__
2
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 71
=
_
sin(2
k1
+2
m+1
)
2 sin(2
k2
+2
m
)
_
2
sin
2
_

2
+2
m+1
_
_
2
k
sin
_
/2
2
k
+2
m
__
2

_
sin(2
k1
+2
m
)
2 sin(2
k2
+2
m
)
_
2
sin
2
_

2
+2
m+1
_
_
2
k
sin
_
/2
2
k
+2
m
__
2
=
sin
2
_

2
+2
m+1
_
_
2
k+1
sin
_
/2
2
k+1
+2
m
__
2
,
as desired. Our result follows by induction.
So, using this result, we have
P()
_
1

2
4n
_
m2

q=1
cos
2
(2
q1
+2
m
)

_
1

2
4n
_
sin
2
_

2
+2
m+1
_
_
2
m2
sin
_
/2
2
m2
+2
m
__
2
=
_
1

2
4n
_
cos
2
(2
m+1
)
(2
m2
sin (32
m
))
2

_
1

2
4n
_
1 (2
m+1
)
2
(2
m2
(32
m
))
2

_
1

2
4n
_
1 (
2
4n
)
2
(32
2
)
2

_
1

2
4n
__
16
9
2

4
9n
2
_
,
which approaches a constant asymptotic bound of
16
9
2
as n approaches innity.
5.3 Repeated Individual Trials
As with any algorithm, the natural way to increase the accuracy of a phase estima-
tion algorithm is to repeat the entire algorithm a number of times. However, since
we can divide the generalized AQFT circuit into individual trials, it is possible to
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 72
repeat each trial a dierent number of times. For each p, 1 p n, we let
p
be
the number of times we repeat the individual trial for bit x
p
. This raises the ques-
tion of how many times to perform each trial given some limitation on computation
resources. If we let
p
be the amount of resources required to perform a trial for
the bit x
p
(including the controlled-U
2
p
) and the rotation, then we would like to
optimize the parameters
p
given an upper bound for

p
. However, we are left
with the question of how to quantify what it is we would like to optimize. Dierent
applications of phase estimation have dierent needs that may be best served with
dierent values for
p
. As an example, an application that does not require very
much precision in the answer would not benet from more measurements of the
last bit x
n
as much as an application that does require that precision.
One way to quantify this notion is through a cost function. Dene the function
C : [
1
2
,
1
2
] R so that C() will indicate the cost of obtaining an error of =

in the phase amount. Then, given an upper bound on

p
, R, we need to nd
parameters that minimize the expected cost of the result of the phase estimation
algorithm.
As for the set of valid cost functions, we may make the practical assumption
that getting a more accurate answer is always better, so that C(x) is a monotone
increasing function on [0,
1
2
) and a monotone decreasing function on (
1
2
, 0]. The
optimal values for
p
can be approximated eciently as a precomputation using
numerical techniques, given xed values for the
p
and a xed upper bound for

p
. Given any specic application, it is not unreasonable to have xed values
for these parameters. In addition, if we consider the parameters
p
as a function of
R, the total amount of resources available, then, given optimal parameters
p
(R) for
a certain amount of resources R and 2R for twice as many resources, the optimal
parameters should be fairly close to simply repeating the optimal conguration
CHAPTER 5. GENERALIZED PHASE ESTIMATION ALGORITHMS 73
twice. Simply put, we should expect
p
(2R) 2
p
(R) for suciently large R.
Because of this, we conjecture that the ratios between the various parameters
p
(R)
approach optimal ratios asymptotically, and that given a xed R, the optimal
solution is simply the one which best approximates these optimal ratios. These
optimal ratios should depend only on the value of the cost function, C.
Chapter 6
Applications and Future Work
This chapter surveys a few of the applications of quantum phase estimation and
some avenues for further research on generalized AQFT circuits, including applica-
tions other than phase estimation.
6.1 Order Finding
Order nding is an example of a quantum algorithm that solves a problem in a
polynomial number of gates for which there is no known classical polynomial time
algorithm. The problem is to nd the order of a given x modulo N, which is
the smallest positive integer r so that x
r
1 mod N. x is a xed number which
is chosen as an input, and is presumed to be coprime with N, since it is easily
veriable. This restriction ensures that the order r always exists.
This is a simple application of the phase estimation algorithm. In this case, the
unitary operator U will operate on n bits, where N 2
n
. For any pure state [k),
U will map it to the state [kx mod N), unless k N, in which case U will map
74
CHAPTER 6. APPLICATIONS AND FUTURE WORK 75
it to back to [k). Since x is invertible modulo N, the map U is invertible as well.
Since modular multiplication is easily implemented with classical circuits, it is also
easy to implement using quantum gates.
The more dicult part is to prepare the eigenstate needed by the phase estima-
tion algorithm. We can verify that the eigenstates of U are
[u
s
) =
1

r
r1

k=0
e
2isk/r

x
k
mod N
_
,
for s = 0, 1, . . . , r 1, and the corresponding eigenvalues are
u
s
= e
2is/r
by computing
U [u
s
) =
1

r
r1

k=0
e
2isk/r

x
k+1
mod N
_
= e
2is/r
[u
s
) .
However, since we have no foreknowledge about the value of r (the order of x), we
cannot construct these eigenstates beforehand.
Fortunately, we can make the observation that
1

r
r1

s=0
[u
s
) = [1) ,
as everything conveniently cancels out. This means that the state [1), which is
easy to prepare, is an equal superposition of all of the eigenstates of U. Inputting
this state into the phase estimation algorithm will output a superposition of states
corresponding to the individual eigenvalues of U. This means that when we make
a measurement, we will get an estimate of s/r for some random s. We may then
use continued fraction expansions to nd r on a classical computer, as long as the
estimate of s/r is suciently accurate.
CHAPTER 6. APPLICATIONS AND FUTURE WORK 76
In the phase estimation algorithm, we need to perform the controlled-U
2
p
gate
for each p, 1 p n. Since U
2
p
is simply modular exponentiation, which can be
implemented classically in polynomial time, they can be eciently implemented by
a quantum computer as well. This completes the order nding algorithm.
6.2 Shors Polynomial-time Factoring Algorithm
Shors quantum factoring algorithm is simply an application of the order-nding
algorithm. In this algorithm we can assume that N, the integer to be factored,
is not an exact power of another integer of the form a
b
where b 2, as there are
ecient classical algorithms to nd a and b in this case. We would then proceed to
use the factorization algorithm to factor a. It is also assumed that N is odd and
composite, as these are also easily checked classically.
We rst choose a random value x between 2 and N1 so that it is coprime with
N. If we happen to select an x which is not coprime, it can be used to nd a factor of
N classically. We then use the order-nding algorithm to nd the smallest positive
integer r so that x
r
1 mod N. We would like to have r so that it is even, and so
that x
r/2
, 1 mod N. It can be shown that this will happen with probability at
least 3/4. If the order r is not even, or does not satisfy x
r/2
, 1 mod N, then we
choose a dierent value of x at random, and try again.
Upon nding such an r, we will have x such that
_
x
r/2
_
2
1 mod N. Since r is
the order of x, we know that x
r/2
, 1 mod N. From our choice of r, we also know
that x
r/2
, 1 mod N. Thus, we have a non-trivial solution to (x
r/2
1)(x
r/2
+1)
0 mod N, which means that one of these two factors must reveal a non-trivial factor
of N.
CHAPTER 6. APPLICATIONS AND FUTURE WORK 77
6.3 The Abelian Hidden Subgroup Problem
The Abelian hidden subgroup problem (AHSP) is a generalization of many of the
applications of phase estimation, such as order nding and discrete logarithms. In
the AHSP, we are given a known nite Abelian group, G, and an unknown subgroup,
K G. Suppose also that there is a function, f, which can distinguish between
cosets of K. Specically, f is a function, f : G Z such that for g
1
, g
2
G,
f(g
1
) = f(g
2
) whenever g
1
and g
2
belong to the same coset of K, and f(g
1
) ,= f(g
2
)
whenever they belong to dierent cosets. Suppose that we are given a black-box
1
quantum gate, U
f
, which performs the operation U
f
: [g) [j) [g) [f(g) j),
where represents the binary bit-wise XOR operation. Then the Abelian hidden
subgroup problem asks for a set of elements from G that form a generator for the
subgroup K.
To solve the AHSP, we require an extension of the quantum Fourier transform
that acts on n-qubit registers as representations of Abelian groups rather than
simply as a representation of the integers modulo 2
n
, which is itself an Abelian
group. Since nite Abelian groups are direct products of cyclic groups of prime
power order, we simply represent each cyclic group with a quantum register. We
then dene the Fourier transform over the entire group as the combination of Fourier
transforms over each individual cycle. For each cyclic group in the direct product,
Z
N
, the QFT maps each basis state [j) to
QFT([j)) =
1

N
N1

k=0
e
2ijk/N
[k)
for 0 j N 1, and simply maps [j) to itself for j N. Given a basis state
corresponding to an element of G, [j
1
)[j
2
) [j
q
), where each term corresponds
1
This gate is a black box in the sense that the algorithm which solves the AHSP does not
rely on any knowledge of the implementation of such a gate.
CHAPTER 6. APPLICATIONS AND FUTURE WORK 78
to one of the cyclic groups that make up G, the QFT circuit will map this state to
QFT([j
1
)) QFT([j
q
)).
A description of the actual quantum circuit that performs the QFT over an arbitrary
Abelian group can be found in [9].
The rst step in solving the AHSP is to construct the state
1
_
[G[

gG
[g) [f(g))
by rst creating a superposition of the basis states, [g), adjoining a quantum register
of all [0) qubits and performing the operation U
f
. If we perform a measurement on
the second register, we will obtain a xed state, [f(g

)), for some specic g

G.
However, this partial measurement in the second register causes only those states
[g) which corresponded to [f(g

)) to remain in the rst register. This is because


when the rst register is measured, the outcome must have the property that the
combination of the two measurements is a possible outcome of measuring both
registers at the same time. This means that the rst register contains only states
such that f(g) = f(g

), which includes all the states that correspond to the coset


of K containing g

, or K +g

.
Our rst register is now in the state
1
_
[K[

gK
[g

+g)
and we apply the QFT corresponding to the Abelian group G. If G were a cyclic
group of prime power order, Z
p
n, then the subgroup K G would be isomorphic to
Z
p
m for some m such that 0 m n. As a subgroup of G, K would be generated
by the element p
nm
G, and so, letting [j

) be the state corresponding g

G,
CHAPTER 6. APPLICATIONS AND FUTURE WORK 79
we have
QFT
_
1
_
[K[

gK
[g

+g)
_
=
1

p
m
p
m
1

j=0
1

p
n
p
n
1

k=0
e
2i(j

+p
nm
j)k/p
n
[k)
=
1

p
n
p
n
1

k=0
e
2ij

k/p
n 1

p
m
_
p
m
1

j=0
e
2ijk/p
m
_
[k) .
If k is a multiple of p
m
, then e
2ijk/p
m
= 1. Otherwise, e
2ijk/p
m
= 0. So, we have
QFT
_
1
_
[K[

gK
[g

+g)
_
=
1

p
nm
p
nm
1

=0
e
2ij

/p
nm
[p
m
k) .
If we now perform a measurement on the rst register, we are certain to obtain
an element of the subgroup K

, which is isomorphic to Z
p
nm. With O(n) such
elements, n independent elements can be found with high probability, so that gen-
erators for both K

and K can be determined classically.


For a direct product of such cyclic groups, the result will just be the combination
of the individual results, and we again obtain an element of K

after applying the


QFT and measuring. With O(log [G[) such elements, a generating set for K can be
found.
6.4 Future Work
Generalized AQFT circuits over Finite Abelian Groups
Although the focus of this thesis is the quantum Fourier transform over the group
Z
2
n, the question remains as to whether the generalizations and extensions of the
QFT developed in previous chapters apply to the quantum Fourier transform over
a general nite Abelian group.
CHAPTER 6. APPLICATIONS AND FUTURE WORK 80
The techniques used to relax the requirements of the full QFT to obtain the
AQFT and the generalized AQFT should be applicable to the QFT algorithm for
arbitrary Abelian groups as well.
Classical Post-Processing Algorithms
In the original version of Kitaevs algorithm, as given in [9], the need for a classi-
cal post-processing algorithm is avoided by repeating each individual trial for any
particular bit, x
p
, until it is correct with high probability, before moving onto the
next bit. This procedure repeats each trial O(n) times in order to reach a xed
accuracy rate.
However, in an information-theoretic sense, the output of even one set of indi-
vidual trials should contain enough information about the phase in order to make
an estimate correct to the nearest multiple of 1/2
n
with a xed constant prob-
ability. The classical post-processing algorithm given in Section 4.1 attempts to
extract phase information eciently. However, the analysis given for this algo-
rithm is a heuristic analysis, and whether the algorithm is indeed polynomial-time
or not hinges on whether the value of the required threshold parameter T is indeed
in O(log n). In addition, many small improvements might also be made to the al-
gorithm in order to make it faster. For practical purposes, it may be sucient that
T grow only slightly faster than O(log n), making the algorithm not polynomial-
time, although perhaps still of practical value. Additionally, the algorithm has a
higher chance of success when it has more unambiguous information about the an-
swer encoded in the likelihood function, so it may be that the algorithm becomes
polynomial-time after a certain number of good measurements are performed.
Finally, this post-processing algorithm is potentially applicable to a number
CHAPTER 6. APPLICATIONS AND FUTURE WORK 81
of other quantum algorithms for which nding the MLE directly appears to be a
required step in order for the algorithm to work at all.
The Dihedral Hidden Subgroup Problem
One such problem is the Dihedral Hidden Subgroup Problem, described by Ettinger
and Hyer in [6]. Although there is an algorithm to perform quantum Fourier
transforms over nite Abelian groups, there is no such algorithm for non-Abelian
groups. Given a dihedral group D
n
, which is the group of symmetries of a n-sided
regular polygon, the Dihedral HSP seeks the generators of a subgroup K D
n
given a function f : D
n
Z that distinguishes cosets of K in the same way the
corresponding function does for the Abelian HSP.
However, the quantum algorithm given by Ettinger and Hyer requires classical
post-processing equivalent to nding an approximation of the MLE, which they
leave as an open problem. If the heuristic algorithm used with the AQFT
1
circuit
in Section 4.1 can be modied for this purpose eciently, then when combined with
the quantum algorithm, it will become an ecient algorithm to solve an instance
of the non-Abelian HSP.
Optimal Congurations for Generalized AQFT Circuits
In the analysis of the generalized AQFT in Chapter 5, the individual tolerance
parameters
p
were set to the value of the largest tolerance in order to obtain a
lower bound for the probability of success. However, these parameters can also be
adjusted according to a xed amount of computational resources. As an exam-
ple, in the regular AQFT circuit, having the rst O(log
2
n) trials computed with a
CHAPTER 6. APPLICATIONS AND FUTURE WORK 82
signicantly smaller tolerance for error gives much better results. However, param-
eterizing the entire phase estimation algorithm in terms of individual tolerances
p
and repetition amounts
p
does not lend itself well to analysis.
Additionally, it was conjectured in Section 5.3 that there exists a set of optimal
ratios
p
for a generalized phase estimation algorithm that are approached as the
amount of resources goes to innity.
6.5 Conclusion
The analysis of the approximate QFT and its generalization indicates that, as
a quantum algorithm, the quantum Fourier transform is quite tolerant of errors.
These improvements to the QFT do not allow us to construct entirely new quantum
algorithms, but only to improve the performance of current algorithms which use
the QFT. However, such improvements are still useful as they allow us to extend
the range of feasible inputs to current quantum algorithms.
As one would expect, the greatest improvement in performance is evident at the
rst step of simplication, from the QFT to the AQFT
m
circuit. However, as we
saw in Chapter 5, it is possible to be much more exible with the rotation gates
than the description of the AQFT circuit allows for. This is especially signicant
considering that any actual implementation of a generalized AQFT circuit will need
to take into account the Solovay-Kitaev construction for approximating the rotation
gates. Taking the bounds given by Solovay-Kitaev directly into account in our
generalized AQFT model makes the analysis more relevant to any future attempts
at implementing quantum algorithms. The improvements in performance presented
in this thesis are of particular signicance to any potential physical implementation
of QFT-based algorithms, as the generalized phase estimation algorithms tend to
CHAPTER 6. APPLICATIONS AND FUTURE WORK 83
use less quantum gates, which reduces the overall potential for errors. The analysis
of these algorithms also suggests that these quantum circuits are robust with respect
to tolerance to errors.
Bibliography
[1] Aharonov, D., Quantum Computation, in Annual Reviews of Computational
Physics VI, Stauer, D., ed., World Scientic (1998).
http://www.arxiv.org e-print quant-ph/9812037
[2] Barenco, A., Ekert, A., Suominen, K.-A., Torm a, P., Approximate Quantum
Fourier Transform and Decoherence, Physics Review A, 54(1), pp. 139146
(1996).
http://www.arxiv.org e-print quant-ph/9601018.
[3] Bhimji, W., Approximate Quantum Fourier Transforms and Phase Estima-
tions. M.Phys. Project Paper, University of Oxford (1998).
[4] Cleve, R., Watrous, J., Fast Parallel Circuits for the Quantum Fourier Trans-
form, IEEE Symposium on Foundations of Computer Science, pp. 526536
(2000).
http://www.arxiv.org e-print quant-ph/0006004.
[5] Coppersmith, D., An Approximate Fourier Transform Useful in Quantum Fac-
toring, IBM Research Report RC19642 (1994).
http://www.arxiv.org e-print quant-ph/0201067.
84
BIBLIOGRAPHY 85
[6] Ettinger, M., Hyer, P., On Quantum Algorithms for Noncommutative Hidden
Subgroups, Lecture Notes in Computer Science, 1563, pp. 478487 (1999).
http://www.arxiv.org e-print quant-ph/9807029.
[7] Griths, R. B., Niu, C.-S., Semiclassical Fourier Transform for Quantum
Computation, Physical Review Letters 76, pp. 32283231 (1996).
http://www.arxiv.org e-print quant-ph/9511007.
[8] Jozsa, R., Quantum Algorithms and the Fourier Transform, Proc. Roy. Soc.
Lond. A, 454, pp. 323337 (1998).
http://www.arxiv.org e-print quant-ph/9707033.
[9] Kitaev, A. Yu., Quantum Measurements and the Abelian Stabilizer Problem,
Electronic Colloquium on Computational Complexity 3(3) (1996).
http://www.arxiv.org e-print quant-ph/9511026.
[10] Nielsen, M., and Chuang, I., Quantum Computation and Quantum Informa-
tion, Cambridge University Press (2000).
[11] Press, W., et. al., Numerical Recipes, 2nd ed., Cambridge University Press
(1992).

You might also like