sig
type integer
and real
module type Ops =
sig
type t
and num_type
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
module IntOps :
sig
type t = int
and num_type = integer
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
module Int32Ops :
sig
type t = int32
and num_type = integer
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
module Int64Ops :
sig
type t = int64
and num_type = integer
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
module NativeOps :
sig
type t = nativeint
and num_type = integer
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
module FloatOps :
sig
type t = float
and num_type = real
val add : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val sub : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val succ : Math.Ops.t -> Math.Ops.t
val pred : Math.Ops.t -> Math.Ops.t
val mul : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val div : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val rem : Math.Ops.t -> Math.Ops.t -> Math.Ops.t
val abs : Math.Ops.t -> Math.Ops.t
val zero : Math.Ops.t
val one : Math.Ops.t
val min : Math.Ops.t
val max : Math.Ops.t
val print : Pervasives.out_channel -> Math.Ops.t -> unit
val to_float : Math.Ops.t -> float
val of_float : float -> Math.Ops.t
end
val succ_float : float -> float
val pred_float : float -> float
val fcmp : epsilon:float -> float -> float -> int
val isfinite : float -> bool
val isinf : float -> bool
val isnan : float -> bool
val isnormal : float -> bool
val iszero : float -> bool
external fma : float -> float -> float -> float = "stew_fma" "fma" "float"
external fdim : float -> float -> float = "stew_fdim" "fdim" "float"
external nextafter : float -> float -> float = "stew_nextafter" "nextafter"
"float"
external remainder : float -> float -> float = "stew_remainder" "remainder"
"float"
external trunc : float -> float = "stew_trunc" "trunc" "float"
external round : float -> float = "stew_round" "round" "float"
external nearbyint : float -> float = "stew_nearbyint" "nearbyint" "float"
external tgamma : float -> float = "stew_tgamma" "tgamma" "float"
external lgamma : float -> float = "stew_lgamma" "lgamma" "float"
external erfc : float -> float = "stew_erfc" "erfc" "float"
external erf : float -> float = "stew_erf" "erf" "float"
external hypot : float -> float -> float = "stew_hypot" "hypot" "float"
external cbrt : float -> float = "stew_cbrt" "cbrt" "float"
external scalbn : float -> int -> float = "stew_scalbn"
external logb : float -> float = "stew_logb" "logb" "float"
external log2 : float -> float = "stew_log2" "log2" "float"
external log1p : float -> float = "stew_log1p" "log1p" "float"
external ilogb : float -> int = "stew_ilogb"
external expm1 : float -> float = "stew_expm1" "expm1" "float"
external exp2 : float -> float = "stew_exp2" "exp2" "float"
external atanh : float -> float = "stew_atanh" "atanh" "float"
external asinh : float -> float = "stew_asinh" "asinh" "float"
external acosh : float -> float = "stew_acosh" "acosh" "float"
val e : float
val log2e : float
val log10e : float
val ln2 : float
val ln10 : float
val pi : float
val pi2 : float
val pi4 : float
val invpi : float
val invpi2 : float
val sqrtpi2 : float
val sqrt2 : float
val invsqrt2 : float
end