Operazione Di divisione

Avviso

Questa documentazione si riferisce al QDK classico, che è stato sostituito dal QDK moderno.

https://aka.ms/qdk.api Vedere la documentazione dell'API per QDK moderno.

Spazio dei nomi: Microsoft.Quantum.Arithmetic

Pacchetto: Microsoft.Quantum.Numerics

Divide due numeri interi quantistici.

operation DivideI (xs : Microsoft.Quantum.Arithmetic.LittleEndian, ys : Microsoft.Quantum.Arithmetic.LittleEndian, result : Microsoft.Quantum.Arithmetic.LittleEndian) : Unit is Adj + Ctl

Descrizione

xs conterrà il resto xs - floor(xs/ys) * ys e result conterrà floor(xs/ys).

Input

xs : LittleEndian

$n dividendo $-bit, verrà sostituito dal resto.

ys : LittleEndian

divisore $n$bit

result : LittleEndian

$n risultato $-bit, deve essere in stato $\ket{0}$ inizialmente e verrà sostituito dal risultato della divisione integer.

Output : unità

Commenti

Usa un approccio di spostamento e sottrazione standard per implementare la divisione. La versione controllata è specializzata in modo tale che la sottrazione non richieda controlli aggiuntivi.