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