Operasi QuantumPhaseEstimation

Peringatan

Dokumentasi ini mengacu pada QDK Klasik, yang telah digantikan oleh Modern QDK.

Silakan lihat https://aka.ms/qdk.api dokumentasi API untuk QDK Modern.

Namespace: Microsoft.Quantum.Characterization

Paket: Microsoft.Quantum.Standard

Melakukan algoritma estimasi fase kuantum untuk oracle U tertentu dan targetState, membaca fase ke dalam register kuantum big-endian.

operation QuantumPhaseEstimation (oracle : Microsoft.Quantum.Oracles.DiscreteOracle, targetState : Qubit[], controlRegister : Microsoft.Quantum.Arithmetic.BigEndian) : Unit is Adj + Ctl

Input

oracle : DiscreteOracle

Operasi yang mengimplementasikan $U^m$ untuk daya bilangan bulat yang diberikan m.

targetState : Qubit[]

Register kuantum yang mewakili status $\ket{\phi}$ yang ditindaklanjuti oleh $U$. Jika $\ket{\phi}$ adalah eigenstate dari $U$, $U\ket{\phi} = e^{i\phi} \ket{\phi}$ untuk $\phi \in [0, 2\pi)$ fase yang tidak diketahui.

controlRegister : BigEndian

Register bilangan bulat representasi big-endian yang dapat digunakan untuk mengontrol oracle yang disediakan, dan yang akan berisi representasi $\phi$ setelah penerapan operasi ini. ControlRegister diasumsikan dimulai dalam status awal $\ket{00\cdots 0}$, di mana panjang register menunjukkan presisi yang diinginkan.

Output : Unit