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 flagQubitauxiliaryRegister ve $\ket_f\ket{0}{0}_a$ durumunda başlatılır.

Başvurular