Num(3o)
NAME
Num - Operation on arbitrary-precision numbers.
Module
Module Num
Documentation
- Module Num
- : sig end
- Operation on arbitrary-precision numbers.
- Numbers (type num ) are arbitrary-precision rational numbers, plus the special elements 1/0 (infinity) and 0/0 (undefined).
- type 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 add_num : num -> num -> num
- Addition
- val minus_num : num -> num
- Unary negation.
- val (-/) : num -> num -> num
- Same as Num.sub_num .
- val sub_num : num -> num -> num
- Subtraction
- val ( */ ) : num -> num -> num
- Same as Num.mult_num .
- val mult_num : num -> num -> num
- Multiplication
- val square_num : num -> num
- Squaring
- val (//) : num -> num -> num
- Same as Num.div_num .
- val div_num : num -> num -> num
- Division
- val quo_num : num -> num -> num
- Euclidean division: quotient.
- val mod_num : num -> num -> num
- Euclidean division: remainder.
- val ( **/ ) : num -> num -> num
- Same as Num.power_num .
- val power_num : num -> num -> num
- Exponentiation
- val abs_num : num -> num
- Absolute value.
- val succ_num : num -> num
- succ n is n+1
- val pred_num : num -> num
- pred n is n-1
- val incr_num : num Pervasives.ref -> unit
- incr r is r:=!r+1 , where r is a reference to a number.
- val decr_num : num Pervasives.ref -> unit
- decr r is r:=!r-1 , where r is a reference to a number.
- val is_integer_num : num -> bool
- Test if a number is an integer
- === The four following functions approximate a number by an integer : ===
- val integer_num : num -> num
- integer_num n returns the integer closest to n . In case of ties, rounds towards zero.
- val floor_num : num -> num
- floor_num n returns the largest integer smaller or equal to n .
- val round_num : num -> num
- round_num n returns the integer closest to n . In case of ties, rounds off zero.
- val ceiling_num : num -> num
- ceiling_num n returns the smallest integer bigger or equal to n .
- val sign_num : num -> int
- Return -1 , 0 or 1 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 or 1 if the first argument is less than, equal to, or greater than the second argument.
- val max_num : num -> num -> num
- Return the greater of the two arguments.
- val min_num : num -> num -> num
- Return the smaller of the two arguments.
- === 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.
- === Coercions between numerical types ===
- val int_of_num : num -> int
- val num_of_int : int -> num
- val nat_of_num : num -> Nat.nat
- 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 ratio_of_num : num -> Ratio.ratio
- val num_of_ratio : Ratio.ratio -> num
- val float_of_num : num -> float