Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
W pełni kwalifikowana nazwa: Std.Arithmetic.RippleCarryCGAddLE
operation RippleCarryCGAddLE(xs : Qubit[], ys : Qubit[], zs : Qubit[]) : Unit is Adj
Podsumowanie
Ustawia zera zainicjowany rejestr little-endian zs do sumy rejestrów little-endian xs i ys przy użyciu algorytmu przenoszenia tętnień.
Opis
Oblicza zs := xs + ys + zs[0] modulo 2ⁿ, gdzie xs, ys i zs są rejestrami mało endian, Length(xs) = Length(ys) ≤ Length(zs) = n, przy założeniu, że zs jest 0-initialized, z wyjątkiem może zs[0], który może być operacją, która może używać algorytmu przenoszenia fal.
UWAGA: zs[Length(xs)] można użyć jako przeprowadzenia, jeśli zs jest dłuższy niż xs.
Źródło
- arXiv:1709.06648 "Halving koszt dodawania kwantowego", Craig Gidney.