spec/math/u64.bend checks
raw source on the hub · import bend-collections-laws-math@1.0.0.0/spec/math/u64.bend as U64
3 imports
import Base import ../lib/numeric.bend as N import ../../src/math/u64.bend as U
Definitions
def bits source · line 19 · raw
@a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Word(64n)
def signed_quotient source · line 25 · raw
@w:Word(64n) -> @neg:Bool -> @+d:U32 -> Word(64n)
the quotient of a signed word: rounded toward zero, as the magnitude's
def IsZero.value source · line 32 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Type
def LeSigned.value source · line 35 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> @+b:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Type
def Add.bits source · line 38 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> @+b:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Type
def Add.modular source · line 42 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> @+b:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Type
addition modulo 2^64
def Neg.bits source · line 45 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> Type
def DivSmall.quotient source · line 49 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> @+d:U32 -> @+hd0:{U32.is_zero(d) == False{} : Bool} -> @+hle:{U32.is_le(d, 1048576) == True{} : Bool} -> Typedivisors 1 .. 2^20 (the limb division stays inside 32 bits)
def DivSmallSigned.quotient source · line 52 · raw
@+a:0xf86f5f1d9a594d5a5cff999100e01d03/src/math/u64.U64 -> @+d:U32 -> @+hd0:{U32.is_zero(d) == False{} : Bool} -> @+hle:{U32.is_le(d, 1048576) == True{} : Bool} -> Type