include Num
type num = Num.num =
| Int of int
| Big_int of Big_int.big_int
| Ratio of Ratio.ratio
The type of numbers.
Arithmetic operations
val (+/) : num -> num -> num
Same as
Num.add_num
.
val (-/) : num -> num -> num
Same as
Num.sub_num
.
val (*/) : num -> num -> num
Same as
Num.mult_num
.
val (//) : num -> num -> num
Same as
Num.div_num
.
val (**/) : num -> num -> num
Same as
Num.power_num
.
val incr_num : num Stdlib.ref -> unit
incr r
isr:=!r+1
, wherer
is a reference to a number.
val decr_num : num Stdlib.ref -> unit
decr r
isr:=!r-1
, wherer
is a reference to a number.
val is_integer_num : num -> bool
Test if a number is an integer
val integer_num : num -> num
integer_num n
returns the integer closest ton
. In case of ties, rounds towards zero.
val round_num : num -> num
round_num n
returns the integer closest ton
. In case of ties, rounds off zero.
val sign_num : num -> int
Return
-1
,0
or1
according to the sign of the argument.
Comparisons between numbers
val (=/) : num -> num -> bool
val (</) : num -> num -> bool
val (>/) : num -> num -> bool
val (<=/) : num -> num -> bool
val (>=/) : num -> num -> bool
val (<>/) : num -> num -> bool
val eq_num : num -> num -> bool
val lt_num : num -> num -> bool
val le_num : num -> num -> bool
val gt_num : num -> num -> bool
val ge_num : num -> num -> bool
val compare_num : num -> num -> int
Return
-1
,0
or1
if the first argument is less than, equal to, or greater than the second argument.
Coercions with strings
val string_of_num : num -> string
Convert a number to a string, using fractional notation.
val approx_num_fix : int -> num -> string
See
Num.approx_num_exp
.
val approx_num_exp : int -> num -> string
Approximate a number by a decimal. The first argument is the required precision. The second argument is the number to approximate.
Num.approx_num_fix
uses decimal notation; the first argument is the number of digits after the decimal point.approx_num_exp
uses scientific (exponential) notation; the first argument is the number of digits in the mantissa.
val num_of_string : string -> num
Convert a string to a number. Raise
Failure "num_of_string"
if the given string is not a valid representation of an integer
val num_of_string_opt : string -> num option
Convert a string to a number. Return
None
if the given string is not a valid representation of an integer.- since
- 4.05
Coercions between numerical types
val int_of_num : num -> int
val int_of_num_opt : num -> int option
val num_of_int : int -> num
val nat_of_num : num -> Nat.nat
val nat_of_num_opt : num -> Nat.nat option
val num_of_nat : Nat.nat -> num
val num_of_big_int : Big_int.big_int -> num
val big_int_of_num : num -> Big_int.big_int
val big_int_of_num_opt : num -> Big_int.big_int option
val ratio_of_num : num -> Ratio.ratio
val num_of_ratio : Ratio.ratio -> num
val float_of_num : num -> float
val sexp_of_num : Num.num -> Sexplib.Sexp.t
val num_of_sexp : Sexplib.Sexp.t -> Num.num