def Mag.step

bend-kit-bignum@0.1.0.0 · bigint.bend:218

import bend-kit-bignum@0.1.0.0/bigint.bend as Bigint
import Base

218# One quotient digit: bring limb x down into r, estimate from r's top two
219# limbs over bn's top limb vt, and correct.
220def Mag.step(x: U32, +bn: List<&2, U32>, +n: Nat, +n1: Nat, +vt: U32,
221  qr: List<&2, U32> & List<&2, U32>) -> List<&2, U32> & List<&2, U32>:
222  (q, r) = qr
223  +r2 = Mag.cons(x, r)
224  +d = U32.min(((Mag.at(r2, n) * 10000 + Mag.at(r2, n1)) / vt : U32), 9999)
225  Mag.fix(3n, d, Mag.scale(bn, d), r2, bn, q)

Uses (13)

Used by (1)