In
quantum computing
Quantum computing is a type of computation whose operations can harness the phenomena of quantum mechanics, such as superposition, interference, and entanglement. Devices that perform quantum computations are known as quantum computers. Though ...
, the quantum phase estimation algorithm (also referred to as quantum eigenvalue estimation algorithm), is a
quantum algorithm
In quantum computing, a quantum algorithm is an algorithm which runs on a realistic model of quantum computation, the most commonly used model being the quantum circuit model of computation. A classical (or non-quantum) algorithm is a finite sequ ...
to estimate the phase (or eigenvalue) of an eigenvector of a unitary operator. More precisely, given a
unitary matrix
In linear algebra, a complex square matrix is unitary if its conjugate transpose is also its inverse, that is, if
U^* U = UU^* = UU^ = I,
where is the identity matrix.
In physics, especially in quantum mechanics, the conjugate transpose is ...
and a
quantum state
In quantum physics, a quantum state is a mathematical entity that provides a probability distribution for the outcomes of each possible measurement on a system. Knowledge of the quantum state together with the rules for the system's evolution in ...
such that
, the algorithm estimates the value of
with high probability
In mathematics, an event that occurs with high probability (often shortened to w.h.p. or WHP) is one whose probability depends on a certain number ''n'' and goes to 1 as ''n'' goes to infinity, i.e. the probability of the event occurring can be mad ...
within additive error
, using
qubits (without counting the ones used to encode the eigenvector state) and
controlled-''U'' operations. The algorithm was initially introduced by
Alexei Kitaev
Alexei Yurievich Kitaev (russian: Алексей Юрьевич Китаев; born August 26, 1963) is a Russian–American professor of physics at the California Institute of Technology and permanent member of the Kavli Institute for Theoretical ...
in 1995.
[
Phase estimation is frequently used as a subroutine in other quantum algorithms, such as ]Shor's algorithm
Shor's algorithm is a quantum algorithm, quantum computer algorithm for finding the prime factors of an integer. It was developed in 1994 by the American mathematician Peter Shor.
On a quantum computer, to factor an integer N , Shor's algorithm ...
and the quantum algorithm for linear systems of equations
The quantum algorithm for linear systems of equations, also called HHL algorithm, designed by Aram Harrow, Avinatan Hassidim, and Seth Lloyd, is a quantum algorithm published in 2008 for solving linear systems. The algorithm estimates the result ...
.
The problem
Let ''U'' be a unitary operator
In functional analysis, a unitary operator is a surjective bounded operator on a Hilbert space that preserves the inner product. Unitary operators are usually taken as operating ''on'' a Hilbert space, but the same notion serves to define the con ...
that operates on ''m'' qubits with an eigenvector such that .
We would like to find the eigenvalue of , which in this case is equivalent to estimating the phase , to a finite level of precision. We can write the eigenvalue in the form because ''U'' is a unitary operator over a complex vector space, so its eigenvalues must be complex numbers with absolute value 1.
The algorithm
Setup
The input consists of two registers (namely, two parts): the upper qubits comprise the ''first register'', and the lower qubits are the ''second register''.
Create superposition
The initial state of the system is:
:
After applying ''n-bit'' Hadamard gate operation on the first register, the state becomes:
:.
Apply controlled unitary operations
Let be a unitary operator with eigenvector such that thus by exponentiation by squaring
Exponentiation is a mathematical operation, written as , involving two numbers, the '' base'' and the ''exponent'' or ''power'' , and pronounced as " (raised) to the (power of) ". When is a positive integer, exponentiation corresponds to re ...
,
:.
is a ''controlled-U'' gate which applies the unitary operator on the second register only if its corresponding control bit (from the first register) is .
Assuming for the sake of clarity that the controlled gates are applied sequentially, after applying to the qubit of the first register and the second register, the state becomes
:
where we use:
:
After applying all the remaining controlled operations with as seen in the figure, the state of the first register can be described as
:
where denotes the binary representation of , i.e. it's the computational basis, and the state of the second register is left physically unchanged at .
Apply inverse quantum Fourier transform
Applying inverse quantum Fourier transform
In quantum computing, the quantum Fourier transform (QFT) is a linear transformation on quantum bits, and is the quantum analogue of the discrete Fourier transform. The quantum Fourier transform is a part of many quantum algorithms, notably Shor's ...
on
:
yields
:
The state of both registers together is
:
Phase approximation representation
We can approximate the value of