Module NumTok.Signed
type t
= sign * Unsigned.t
val equal : t -> t -> bool
val is_zero : t -> bool
val of_nat : UnsignedNat.t -> t
val of_int : SignedNat.t -> t
val to_int : t -> SignedNat.t option
val is_int : t -> bool
val sprint : t -> string
val print : t -> Pp.t
sprint
andprint
returns the number as it was parsed, for printing
val parse_string : string -> t option
Parse the string as a signed Coq number, if possible
val of_int_string : string -> t
Convert from a string in the syntax of OCaml's int/int64
val of_string : string -> t
Convert from a string in the syntax of OCaml's string_of_float
val to_string : t -> string
Returns a string in the syntax of OCaml's float_of_string
val of_bigint : num_class -> Z.t -> t
val to_bigint : t -> Z.t option
Convert from and to bigint when the denotation of a bigint
val of_int_frac_and_exponent : SignedNat.t -> UnsignedNat.t option -> SignedNat.t option -> t
val to_int_frac_and_exponent : t -> SignedNat.t * UnsignedNat.t option * SignedNat.t option
n, p and q such that the number is n.p*10^q or n.p*2^q pre/postcondition: classify n = classify p, classify q = CDec
val of_bigint_and_exponent : Z.t -> Z.t exp -> t
val to_bigint_and_exponent : t -> Z.t * Z.t exp
n and p such that the number is n*10^p or n*2^p
val classify : t -> num_class
val is_bigger_int_than : t -> UnsignedNat.t -> bool
Test if an integer whose absolute value is bounded