L'idea per stimare la media è approssimativamente la seguente:
Per ogni che fornisce output nei reali, definire una F riscalata ( x ) che fornisce output nell'intervallo da 0 a 1. Miriamo a stimare la media di F ( x ) .f( x )F( x )F( x )
Definire un unitario cui funzionamento è U un : | 0 ⟩ | 0 ⟩ ↦ 1Uun'È importante notare che questo unitario è facilmente implementabile. Si inizia con una trasformazione Hadamard sul primo registro, si esegue un calcolo dif(x)su un registro ancilla, lo si utilizza per implementare una rotazione controllata del secondo registro, quindi si decomprime il registro ancilla.
Uun': | 0 ⟩ | 0 ⟩ ↦ 12n / 2ΣX| x⟩( 1 - F( x )-------√| 0⟩+ F( x )----√| 1⟩).
f( x )
Definire il unitaria .G = Uun'( I - 2 | 0 ⟩ ⟨ 0 | ⊗ | 0 ⟩ ⟨ 0 | ) U†un'I ⊗Z
A partire da uno stato , utilizzare G molto simile si può usare il Grover iteratore per stimare il numero di soluzioni a un problema di ricerca.Uun'| 0⟩ | 0⟩sol
La maggior parte di questo algoritmo è l'amplificazione dell'ampiezza, come descritto qui . L'idea principale è che è possibile definire due stati
e questo definisce un sottospazio per l'evoluzione. Lo stato iniziale èUa| 0⟩| 0⟩=( √
| ψ⟩= 1ΣXF( x )-------√ΣXF( x )----√| x⟩ | 1⟩| ψ⊥⟩ = 1ΣX1 - F( x )----------√ΣX1 - F( x )-------√| x⟩ | 0⟩,
. L'ampiezza del
| ψ⟩termine contiene chiaramente le informazioni circa la media di
F(x), se solo potessimo stimarlo. Potresti preparare ripetutamente questo stato e misurare la probabilità di ottenere un
| 1⟩sul secondo registro, ma la ricerca di Grover ti dà un miglioramento quadratica. Se si confronta con il modo in cui Grover's è solitamente impostato, l'ampiezza di questo
| ψ⟩Uun'| 0⟩ | 0⟩=( ΣXF( x )-------√| ψ⟩+ ΣX1 - F( x )----------√| ψ⊥⟩ ) 2- n / 2| ψ⟩F( x )| 1⟩| ψ⟩che puoi "segnare" (in questo caso applicando
) sarebbe
√I ⊗Z dove
mè il numero di soluzioni.
m2n--√m
Per inciso, questo è interessante da confrontare con la "potenza di un qubit pulito", noto anche come DQC1. Ecco, se applichi a I.Uun', la probabilità di ottenere la risposta 1 è la stessa della versione non accelerata e fornisce una stima della media.io2n⊗ | 0 ⟩ ⟨ 0 |
z
ΣX| f( x ) - f( z) | .
TXf( x ) ≤ TT
Certo, sto saltando alcuni dettagli di tempi di esecuzione precisi, stime di errore ecc.