`sig type t val zero : BatNumber.Numeric.t val one : BatNumber.Numeric.t val neg : BatNumber.Numeric.t -> BatNumber.Numeric.t val abs : BatNumber.Numeric.t -> BatNumber.Numeric.t val add : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val sub : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val mul : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val div : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val modulo : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val pow : BatNumber.Numeric.t -> BatNumber.Numeric.t -> BatNumber.Numeric.t val compare : BatNumber.Numeric.t -> BatNumber.Numeric.t -> int val equal : BatNumber.Numeric.t -> BatNumber.Numeric.t -> bool val ord : BatNumber.Numeric.t BatOrd.ord val of_int : int -> BatNumber.Numeric.t val to_int : BatNumber.Numeric.t -> int val of_float : float -> BatNumber.Numeric.t val to_float : BatNumber.Numeric.t -> float val of_string : string -> BatNumber.Numeric.t val to_string : BatNumber.Numeric.t -> string val operations : BatNumber.Numeric.t BatNumber.numeric type discrete = BatNumber.Numeric.t val succ : BatNumber.Numeric.t -> BatNumber.Numeric.t val pred : BatNumber.Numeric.t -> BatNumber.Numeric.t module Infix : sig type bat__infix_t = t val ( + ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( - ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( * ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( / ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( ** ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( -- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t val ( --- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t end module Compare : sig type bat__compare_t = t val ( <> ) : bat__compare_t -> bat__compare_t -> bool val ( >= ) : bat__compare_t -> bat__compare_t -> bool val ( <= ) : bat__compare_t -> bat__compare_t -> bool val ( > ) : bat__compare_t -> bat__compare_t -> bool val ( < ) : bat__compare_t -> bat__compare_t -> bool val ( = ) : bat__compare_t -> bat__compare_t -> bool end type bat__infix_t = t val ( + ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( - ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( * ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( / ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( ** ) : bat__infix_t -> bat__infix_t -> bat__infix_t val ( -- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t val ( --- ) : bat__infix_t -> bat__infix_t -> bat__infix_t BatEnum.t type bat__refops_t = t val ( += ) : bat__refops_t ref -> bat__refops_t -> unit val ( -= ) : bat__refops_t ref -> bat__refops_t -> unit val ( *= ) : bat__refops_t ref -> bat__refops_t -> unit val ( /= ) : bat__refops_t ref -> bat__refops_t -> unit end`