include module type of struct include Num end
type num = Num.num = | Int of int| Big_int of Big_int.big_int| Ratio of Ratio.ratio
val incr_num : num ref -> unitval decr_num : num ref -> unitval is_integer_num : num -> boolval sign_num : num -> intval (<=/) : num -> num -> boolval (>=/) : num -> num -> boolval (<>/) : num -> num -> boolval eq_num : num -> num -> boolval lt_num : num -> num -> boolval le_num : num -> num -> boolval gt_num : num -> num -> boolval ge_num : num -> num -> boolval compare_num : num -> num -> intval string_of_num : num -> stringval approx_num_fix : int -> num -> stringval approx_num_exp : int -> num -> stringval num_of_string : string -> numval num_of_string_opt : string -> num optionval int_of_num : num -> intval int_of_num_opt : num -> int optionval num_of_int : int -> numval nat_of_num : num -> Nat.natval nat_of_num_opt : num -> Nat.nat optionval num_of_nat : Nat.nat -> numval num_of_big_int : Big_int.big_int -> numval big_int_of_num : num -> Big_int.big_intval big_int_of_num_opt : num -> Big_int.big_int optionval ratio_of_num : num -> Ratio.ratioval num_of_ratio : Ratio.ratio -> numval float_of_num : num -> float