sig
  type t
  val to_float : LDouble.t -> float
  val of_float : float -> LDouble.t
  val to_int : LDouble.t -> int
  val of_int : int -> LDouble.t
  val to_string : ?width:int -> ?prec:int -> LDouble.t -> string
  val of_string : string -> LDouble.t
  val add : LDouble.t -> LDouble.t -> LDouble.t
  val sub : LDouble.t -> LDouble.t -> LDouble.t
  val mul : LDouble.t -> LDouble.t -> LDouble.t
  val div : LDouble.t -> LDouble.t -> LDouble.t
  val neg : LDouble.t -> LDouble.t
  val pow : LDouble.t -> LDouble.t -> LDouble.t
  val sqrt : LDouble.t -> LDouble.t
  val exp : LDouble.t -> LDouble.t
  val log : LDouble.t -> LDouble.t
  val log10 : LDouble.t -> LDouble.t
  val expm1 : LDouble.t -> LDouble.t
  val log1p : LDouble.t -> LDouble.t
  val cos : LDouble.t -> LDouble.t
  val sin : LDouble.t -> LDouble.t
  val tan : LDouble.t -> LDouble.t
  val acos : LDouble.t -> LDouble.t
  val asin : LDouble.t -> LDouble.t
  val atan : LDouble.t -> LDouble.t
  val atan2 : LDouble.t -> LDouble.t -> LDouble.t
  val hypot : LDouble.t -> LDouble.t -> LDouble.t
  val cosh : LDouble.t -> LDouble.t
  val sinh : LDouble.t -> LDouble.t
  val tanh : LDouble.t -> LDouble.t
  val acosh : LDouble.t -> LDouble.t
  val asinh : LDouble.t -> LDouble.t
  val atanh : LDouble.t -> LDouble.t
  val ceil : LDouble.t -> LDouble.t
  val floor : LDouble.t -> LDouble.t
  val abs : LDouble.t -> LDouble.t
  val rem : LDouble.t -> LDouble.t -> LDouble.t
  val copysign : LDouble.t -> LDouble.t -> LDouble.t
  val frexp : LDouble.t -> LDouble.t * int
  val ldexp : LDouble.t -> int -> LDouble.t
  val modf : LDouble.t -> LDouble.t * LDouble.t
  val classify : LDouble.t -> Pervasives.fpclass
  val min_float : LDouble.t
  val max_float : LDouble.t
  val epsilon : LDouble.t
  val nan : LDouble.t
  val infinity : LDouble.t
  val neg_infinity : LDouble.t
  val zero : LDouble.t
  val one : LDouble.t
  val byte_sizes : int * int
end