`sig
type num =
Num.num =
Int of int
| Big_int of Big_int.big_int
| Ratio of Ratio.ratio
type t = BatNum.num
val zero : BatNum.num
val one : BatNum.num
val neg : BatNum.num -> BatNum.num
val abs : BatNum.num -> BatNum.num
val add : BatNum.num -> BatNum.num -> BatNum.num
val sub : BatNum.num -> BatNum.num -> BatNum.num
val mul : BatNum.num -> BatNum.num -> BatNum.num
val div : BatNum.num -> BatNum.num -> BatNum.num
val modulo : BatNum.num -> BatNum.num -> BatNum.num
val pow : BatNum.num -> BatNum.num -> BatNum.num
val compare : BatNum.num -> BatNum.num -> int
val ord : BatNum.num -> BatNum.num -> BatOrd.order
val equal : BatNum.num -> BatNum.num -> bool
val of_int : int -> BatNum.num
val to_int : BatNum.num -> int
val of_float : float -> BatNum.num
val to_float : BatNum.num -> float
val of_string : string -> BatNum.num
val to_string : BatNum.num -> string
val of_float_string : string -> BatNum.num
val ( + ) : BatNum.num -> BatNum.num -> BatNum.num
val ( - ) : BatNum.num -> BatNum.num -> BatNum.num
val ( * ) : BatNum.num -> BatNum.num -> BatNum.num
val ( / ) : BatNum.num -> BatNum.num -> BatNum.num
val ( ** ) : BatNum.num -> BatNum.num -> BatNum.num
val max_num : BatNum.num -> BatNum.num -> BatNum.num
val min_num : BatNum.num -> BatNum.num -> BatNum.num
val quo : BatNum.num -> BatNum.num -> BatNum.num
val square : BatNum.num -> BatNum.num
val succ : BatNum.num -> BatNum.num
val pred : BatNum.num -> BatNum.num
val is_integer : BatNum.num -> bool
val round : BatNum.num -> BatNum.num
val floor : BatNum.num -> BatNum.num
val ceil : BatNum.num -> BatNum.num
val approx : BatNum.num -> BatNum.num
val sign : BatNum.num -> int
val operations : BatNum.num BatNumber.numeric
val ( =/ ) : BatNum.num -> BatNum.num -> bool
val ( </ ) : BatNum.num -> BatNum.num -> bool
val ( >/ ) : BatNum.num -> BatNum.num -> bool
val ( <=/ ) : BatNum.num -> BatNum.num -> bool
val ( >=/ ) : BatNum.num -> BatNum.num -> bool
val ( <>/ ) : BatNum.num -> BatNum.num -> bool
val eq_num : BatNum.num -> BatNum.num -> bool
val lt_num : BatNum.num -> BatNum.num -> bool
val le_num : BatNum.num -> BatNum.num -> bool
val gt_num : BatNum.num -> BatNum.num -> bool
val ge_num : BatNum.num -> BatNum.num -> bool
val approx_num_fix : int -> BatNum.num -> string
val approx_num_exp : int -> BatNum.num -> string
val nat_of_num : BatNum.num -> Nat.nat
val num_of_nat : Nat.nat -> BatNum.num
val num_of_big_int : Big_int.big_int -> BatNum.num
val big_int_of_num : BatNum.num -> Big_int.big_int
val ratio_of_num : BatNum.num -> Ratio.ratio
val num_of_ratio : Ratio.ratio -> BatNum.num
val float_of_num : BatNum.num -> float
val print : 'a BatInnerIO.output -> BatNum.t -> unit
module TaggedInfix :
sig
val ( =/ ) : BatNum.num -> BatNum.num -> bool
val ( </ ) : BatNum.num -> BatNum.num -> bool
val ( >/ ) : BatNum.num -> BatNum.num -> bool
val ( <=/ ) : BatNum.num -> BatNum.num -> bool
val ( >=/ ) : BatNum.num -> BatNum.num -> bool
val ( <>/ ) : BatNum.num -> BatNum.num -> bool
val ( +/ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( -/ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( */ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( // ) : BatNum.num -> BatNum.num -> BatNum.num
val ( **/ ) : BatNum.num -> BatNum.num -> BatNum.num
end
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
val ( =/ ) : BatNum.num -> BatNum.num -> bool
val ( </ ) : BatNum.num -> BatNum.num -> bool
val ( >/ ) : BatNum.num -> BatNum.num -> bool
val ( <=/ ) : BatNum.num -> BatNum.num -> bool
val ( >=/ ) : BatNum.num -> BatNum.num -> bool
val ( <>/ ) : BatNum.num -> BatNum.num -> bool
val ( +/ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( -/ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( */ ) : BatNum.num -> BatNum.num -> BatNum.num
val ( // ) : BatNum.num -> BatNum.num -> BatNum.num
val ( **/ ) : BatNum.num -> BatNum.num -> BatNum.num
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
val ( +/ ) : BatNum.num -> BatNum.num -> BatNum.num
val add_num : BatNum.num -> BatNum.num -> BatNum.num
val minus_num : BatNum.num -> BatNum.num
val ( -/ ) : BatNum.num -> BatNum.num -> BatNum.num
val sub_num : BatNum.num -> BatNum.num -> BatNum.num
val ( */ ) : BatNum.num -> BatNum.num -> BatNum.num
val mult_num : BatNum.num -> BatNum.num -> BatNum.num
val square_num : BatNum.num -> BatNum.num
val ( // ) : BatNum.num -> BatNum.num -> BatNum.num
val div_num : BatNum.num -> BatNum.num -> BatNum.num
val quo_num : BatNum.num -> BatNum.num -> BatNum.num
val mod_num : BatNum.num -> BatNum.num -> BatNum.num
val ( **/ ) : BatNum.num -> BatNum.num -> BatNum.num
val power_num : BatNum.num -> BatNum.num -> BatNum.num
val abs_num : BatNum.num -> BatNum.num
val succ_num : BatNum.num -> BatNum.num
val pred_num : BatNum.num -> BatNum.num
val incr_num : BatNum.num Pervasives.ref -> unit
val decr_num : BatNum.num Pervasives.ref -> unit
val is_integer_num : BatNum.num -> bool
val integer_num : BatNum.num -> BatNum.num
val floor_num : BatNum.num -> BatNum.num
val round_num : BatNum.num -> BatNum.num
val ceiling_num : BatNum.num -> BatNum.num
val sign_num : BatNum.num -> int
val string_of_num : BatNum.num -> string
val num_of_string : string -> BatNum.num
val int_of_num : BatNum.num -> int
val num_of_int : int -> BatNum.num
val compare_num : BatNum.num -> BatNum.num -> int
end`