AmplitudeAmplificationFromStatePreparation işlevi
Uyarı
Bu belge, Modern QDK ile değiştirilen Klasik QDK'yi ifade eder.
Lütfen Modern QDK için API belgelerine bakın https://aka.ms/qdk.api .
Ad Alanı: Microsoft.Quantum.AmplitudeAmplification
Paket: Microsoft.Quantum.Standard
Kısmi yansımalar için kahinler tarafından genlik amplifikasyonu.
function AmplitudeAmplificationFromStatePreparation (phases : Microsoft.Quantum.AmplitudeAmplification.ReflectionPhases, stateOracle : Microsoft.Quantum.Oracles.StateOracle, idxFlagQubit : Int) : (Qubit[] => Unit is Adj + Ctl)
Giriş
phases : ReflectionPhases
Kısmi yansımaların aşamaları
stateOracle : StateOracle
Başlangıç durumunu hazırlayan unitary oracle $A$
idxFlagQubit : Int
Kubite bayrak eklemek için dizin oluşturma
Çıkış: Qubit[] =>Unit is Adj + Ctl
Kısmi yansımalar tarafından uygulanan kahinler tarafından genlik genliği uygulayan bir işlem.
Açıklamalar
Bu, başlangıç ve hedef durumlarının biçimine içindekinden AmplitudeAmplificationFromPartialReflections
daha katı koşullar uygular.
Hedef durumun $\ket{1}_f$ ile işaretlendiği varsayılır.
\begin{align} A\ket{0}_{f}\ket{0}_s= \lambda\ket{1}_f\ket{\text{target}}_s + \sqrt{1-|\lambda|^2}\ket{0}_f\cdots, \end{align} Çoğu durumda flagQubit
ve auxiliaryRegister
$\ket_{f}\ket{0}{0}_s$ durumunda başlatılır.