sig
type t = float
val packed_descr : Structural_descr.pack
val hash : t -> int
val pretty : Format.formatter -> t -> unit
val is_exact : Float_sig.prec -> bool
val of_float : Float_sig.round -> Float_sig.prec -> float -> t
val to_float : t -> float
val cmp_ieee : t -> t -> int
val compare : t -> t -> int
val is_nan : t -> bool
val is_finite : t -> bool
val is_infinite : t -> bool
val is_negative : t -> bool
val round_to_precision : Float_sig.round -> Float_sig.prec -> t -> t
val next_float : Float_sig.prec -> t -> t
val prev_float : Float_sig.prec -> t -> t
module Widen_Hints : Float_sig.Widen_Hints
type widen_hints = Widen_Hints.t
val widen_up : widen_hints -> Float_sig.prec -> t -> t
val widen_down : widen_hints -> Float_sig.prec -> t -> t
val neg : t -> t
val abs : t -> t
val floor : t -> t
val ceil : t -> t
val trunc : t -> t
val fround : t -> t
val add : Float_sig.round -> Float_sig.prec -> t -> t -> t
val sub : Float_sig.round -> Float_sig.prec -> t -> t -> t
val mul : Float_sig.round -> Float_sig.prec -> t -> t -> t
val div : Float_sig.round -> Float_sig.prec -> t -> t -> t
val fmod : Float_sig.round -> Float_sig.prec -> t -> t -> t
val exp : Float_sig.round -> Float_sig.prec -> t -> t
val log : Float_sig.round -> Float_sig.prec -> t -> t
val log10 : Float_sig.round -> Float_sig.prec -> t -> t
val sqrt : Float_sig.round -> Float_sig.prec -> t -> t
val pow : Float_sig.round -> Float_sig.prec -> t -> t -> t
val cos : Float_sig.round -> Float_sig.prec -> t -> t
val sin : Float_sig.round -> Float_sig.prec -> t -> t
val acos : Float_sig.round -> Float_sig.prec -> t -> t
val asin : Float_sig.round -> Float_sig.prec -> t -> t
val atan : Float_sig.round -> Float_sig.prec -> t -> t
val atan2 : Float_sig.round -> Float_sig.prec -> t -> t -> t
end