StandardAmplitudeAmplification 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
Standart Genlik Genlik Algoritması
function StandardAmplitudeAmplification (nIterations : Int, stateOracle : Microsoft.Quantum.Oracles.StateOracle, idxFlagQubit : Int) : (Qubit[] => Unit is Adj + Ctl)
Giriş
nIterations : Int
Genlik amplifikasyonu $n$ yineleme sayısı
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
Standart genlik genlik genliği kuantum algoritmasını uygulayan bir işlem
Açıklamalar
Bu, StandardReflectionPhases
\begin{align} A\ket_{f}\ket{0}_s= \lambda\ket{1}_f\ket{0}{\text{target}}_s + \sqrt{1-|\lambda|^2}\ket{0}_f\cdots, \end{align} bu işlem \begin{align} \operatorname{StandardAmplitudeAmplification}\ket{0}_{f}\ket{0}_s= \sin((2n+1)\sin^{-1}(\lambda))\ket{1}_f\ket{\text{target}}_s + \cdots\ket{0}_f \end{align} durumunu hazırlar flagQubit
auxiliaryRegister
ve $\ket_f\ket{0}{0}_a$ durumunda başlatılır.