Skip to main contentIBM Quantum Documentation
Important

IBM Quantum Platform is moving and this version will be sunset on July 1. To get started on the new platform, read the migration guide.

qiskit.circuit.library.phase_estimation

qiskit.circuit.library.phase_estimation(num_evaluation_qubits, unitary, name='QPE')

GitHub

Phase Estimation circuit.

In the Quantum Phase Estimation (QPE) algorithm [1, 2, 3], the Phase Estimation circuit is used to estimate the phase ϕ\phi of an eigenvalue e2πiϕe^{2\pi i\phi} of a unitary operator UU, provided with the corresponding eigenstate ψ|\psi\rangle. That is

Uψ=e2πiϕψU|\psi\rangle = e^{2\pi i\phi} |\psi\rangle

This estimation (and thereby this circuit) is a central routine to several well-known algorithms, such as Shor’s algorithm or Quantum Amplitude Estimation.

Parameters

  • num_evaluation_qubits (int) – The number of evaluation qubits.
  • unitary (QuantumCircuit) – The unitary operation UU which will be repeated and controlled.
  • name (str) – The name of the circuit.

Return type

QuantumCircuit

Reference Circuit:

from qiskit.circuit import QuantumCircuit
from qiskit.circuit.library import phase_estimation
unitary = QuantumCircuit(2)
unitary.x(0)
unitary.y(1)
circuit = phase_estimation(3, unitary)
circuit.draw('mpl')
Circuit diagram output by the previous code.

References:


[1]: Kitaev, A. Y. (1995). Quantum measurements and the Abelian Stabilizer Problem. 1–22.

quant-ph/9511026


[2]: Michael A. Nielsen and Isaac L. Chuang. 2011.

Quantum Computation and Quantum Information: 10th Anniversary Edition (10th ed.). Cambridge University Press, New York, NY, USA.


[3]: Qiskit

textbook

Was this page helpful?
Report a bug or request content on GitHub.