Module Uint63
val uint_size : int
val maxuint31 : t
val of_int : int -> t
val to_int2 : t -> int * int
val of_int64 : Stdlib.Int64.t -> t
val to_int64 : t -> Stdlib.Int64.t
int_min n m
returns the minimum ofn
andm
,m
must be in0, 2^30-1
.
val to_int_min : t -> int -> int
int_min n m
returns the minimum ofn
andm
,m
must be in0, 2^30-1
.
val of_float : float -> t
val to_float : t -> float
val hash : t -> int
val to_string : t -> string
val compile : t -> string
val zero : t
val one : t
val l_sl : t -> t -> t
val l_sr : t -> t -> t
val l_and : t -> t -> t
val l_xor : t -> t -> t
val l_or : t -> t -> t
val a_sr : t -> t -> t
val add : t -> t -> t
val sub : t -> t -> t
val mul : t -> t -> t
val div : t -> t -> t
val rem : t -> t -> t
val diveucl : t -> t -> t * t
val divs : t -> t -> t
val rems : t -> t -> t
val mulc : t -> t -> t * t
val addmuldiv : t -> t -> t -> t
val div21 : t -> t -> t -> t * t
div21 xh xl y
returnsq % 2^63, r
s.t.xh * 2^63 + xl = q * y + r
andr < y
. Wheny
is0
, returns0, 0
.