Partager via


Opération RippleCarryCGAddLE

Nom complet : Std.Arithmetic.RippleCarryCGAddLE

operation RippleCarryCGAddLE(xs : Qubit[], ys : Qubit[], zs : Qubit[]) : Unit is Adj

Résumé

Définit un registre little-endian initialisé zéro à la somme des registres little-endian xs et ys à l’aide de l’algorithme de transport d’ondes.

Descriptif

Calcule zs := xs + ys + zs[0] modulo 2ⁿ, où xs, ys et zs sont des registres little-endian, Length(xs) = Length(ys) ≤ Length(zs) = n, en supposant que zs est 0 initialisé, à l’exception de zs[0], qui peut être Cette opération utilise l’algorithme de transport d’ondes. REMARQUE : zs[Length(xs)] peut être utilisé comme exécution, si zs est plus long que xs.

Référence