Skip to main content
IBM Quantum Platform

PhaseEstimation

class qiskit.circuit.library.PhaseEstimation(num_evaluation_qubits, unitary, iqft=None, name='QPE')

GitHub

Basi: QuantumCircuit

Circuito di stima della fase.

Nell'algoritmo Quantum Phase Estimation (QPE) [1, 2, 3], il circuito Phase Estimation viene utilizzato per stimare la fase ϕ\phi di un autovalore e2πiϕe^{2\pi i\phi} di un operatore unitario UU, dotato del corrispondente autostato ψ|\psi\rangle. Ovvero

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

Questa stima (e quindi questo circuito) è una routine centrale di molti algoritmi noti, come l'algoritmo di Shor o la stima dell'ampiezza quantistica.

Riferimenti:

[1] Kitaev, A. Y. (1995). Misurazioni quantistiche e il problema dello stabilizzatore abeliano. 1–22. quant-ph/9511026

[2] Michael A. Nielsen e Isaac L. Chuang. 2011. Computazione quantistica e informazione quantistica: 10th Anniversary Edition (10a ed.). Cambridge University Press, New York, NY, USA.

[3] Libro di testo Qiskit

Deprecato dalla versione 2.1

La classe qiskit.circuit.library.phase_estimation.PhaseEstimation è deprecata a partire da Qiskit 2.1. Verrà rimosso in Qiskit 3.0. Utilizzare invece qiskit.circuit.library.phase_estimation.

Parametri

  • num_evaluation_qubits (int) – Il numero di qubit di valutazione.
  • unitary (QuantumCircuit) – L'operazione unitaria UU, che verrà ripetuta e monitorata.
  • iqft (QuantumCircuit | None) – Si utilizza una trasformata di Fourier quantistica inversa; per impostazione predefinita viene utilizzata l'inversa di QFT . Si noti che la QFT non dovrebbe includere i consueti swap!
  • name (str) – Il nome del circuito.
Nota

La QFT inversa non dovrebbe includere uno scambio dell'ordine dei qubit.

Circuito di riferimento:

Schema che illustra il circuito precedentemente descritto.

Attributi

name

Tipo: str

Un nome leggibile per il circuito.

Esempio

from qiskit import QuantumCircuit

qc = QuantumCircuit(2, 2, name="my_circuit")
print(qc.name)
my_circuit
Questa pagina è stata utile?
Segnala un bug, un errore di battitura o richiedi contenuti su GitHub.