Condividi tramite


Operazione RippleCarryCGIncByLE

Nome completo: Std.Arithmetic.RippleCarryCGIncByLE

operation RippleCarryCGIncByLE(xs : Qubit[], ys : Qubit[]) : Unit is Adj + Ctl

Sommario

Incrementa un registro little-endian ys di un registro little-endian xs usando l'algoritmo di trasporto increspamento.

Descrizione

Calcola ys += xs modulo 2ⁿ, dove xs e ys sono registri little-endian e Length(xs) ≤ Length(ys) = n. Si noti che se Length(xs) != Length(ys), xs viene riempito con qubit inizializzati da 0 per trovare la corrispondenza con la lunghezza di ys. Questa operazione usa l'algoritmo di trasporto increspamento.

Riferimento

  • arXiv:1709.06648 "Dimezzare il costo dell'addizione quantistica", Craig Gidney.