Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nome completo: Std.Arithmetic.LookAheadDKRSAddLE
operation LookAheadDKRSAddLE(xs : Qubit[], ys : Qubit[], zs : Qubit[]) : Unit is Adj
Sommario
Imposta un registro little-endian con inizializzazione zero zs sulla somma dei registri little-endian xs e y usando l'algoritmo carry-lookahead.
Descrizione
Calcola zs := xs + ys + zs[0] modulo 2ⁿ, dove xs, ys e zs sono registri little-endian, Length(xs) = Length(ys) ≤ Length(zs) = n, supponendo che zs sia inizializzato a 0, ad eccezione di forse zs[0], che può essere in |0> o |1> stato e può essere usato come porta-in.
NOTA: zs[Length(xs)] può essere usato come eseguire, se zs è più lungo di xs.
Questa operazione usa l'algoritmo carry-lookahead.
Riferimento
- arXiv:quant-ph/0406142 "A logaritmic-depth-quantum carry-lookahead adder", Thomas G. Draper, Samuel A. Kutin, Eric M. Rains, Krysta M. Svore