`sig
type t
and round = Near | Zero | Up | Down
val print : Stdlib.Format.formatter -> Mpfr.t -> unit
val print_round : Stdlib.Format.formatter -> Mpfr.round -> unit
val string_of_round : Mpfr.round -> string
external set_default_rounding_mode : Mpfr.round -> unit
= "camlidl_mpfr_mpfr_set_default_rounding_mode"
external get_default_rounding_mode : unit -> Mpfr.round
= "camlidl_mpfr_mpfr_get_default_rounding_mode"
external round_prec : Mpfr.t -> Mpfr.round -> int -> int
= "camlidl_mpfr_mpfr_round_prec"
external get_emin : unit -> int = "camlidl_mpfr_mpfr_get_emin"
external get_emax : unit -> int = "camlidl_mpfr_mpfr_get_emax"
external set_emin : int -> unit = "camlidl_mpfr_mpfr_set_emin"
external set_emax : int -> unit = "camlidl_mpfr_mpfr_set_emax"
external check_range : Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_check_range"
external clear_underflow : unit -> unit
= "camlidl_mpfr_mpfr_clear_underflow"
external clear_overflow : unit -> unit = "camlidl_mpfr_mpfr_clear_overflow"
external clear_nanflag : unit -> unit = "camlidl_mpfr_mpfr_clear_nanflag"
external clear_inexflag : unit -> unit = "camlidl_mpfr_mpfr_clear_inexflag"
external clear_flags : unit -> unit = "camlidl_mpfr_mpfr_clear_flags"
external underflow_p : unit -> bool = "camlidl_mpfr_mpfr_underflow_p"
external overflow_p : unit -> bool = "camlidl_mpfr_mpfr_overflow_p"
external nanflag_p : unit -> bool = "camlidl_mpfr_mpfr_nanflag_p"
external inexflag_p : unit -> bool = "camlidl_mpfr_mpfr_inexflag_p"
external set_default_prec : int -> unit
= "camlidl_mpfr_mpfr_set_default_prec"
external get_default_prec : unit -> int
= "camlidl_mpfr_mpfr_get_default_prec"
external init : unit -> Mpfr.t = "camlidl_mpfr_mpfr_init"
external init2 : int -> Mpfr.t = "camlidl_mpfr_mpfr_init2"
external get_prec : Mpfr.t -> int = "camlidl_mpfr_mpfr_get_prec"
external set_prec : Mpfr.t -> int -> unit = "camlidl_mpfr_mpfr_set_prec"
external set_prec_raw : Mpfr.t -> int -> unit
= "camlidl_mpfr_mpfr_set_prec_raw"
external set : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set"
external set_si : Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_si"
external set_d : Mpfr.t -> float -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_d"
external set_z : Mpfr.t -> Mpz.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_z"
external set_q : Mpfr.t -> Mpq.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_q"
external _set_str : Mpfr.t -> string -> int -> Mpfr.round -> unit
= "camlidl_mpfr_mpfr__set_str"
val set_str : Mpfr.t -> string -> base:int -> Mpfr.round -> unit
external set_f : Mpfr.t -> Mpf.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_f"
external set_si_2exp : Mpfr.t -> int -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_set_si_2exp"
external set_inf : Mpfr.t -> int -> unit = "camlidl_mpfr_mpfr_set_inf"
external set_nan : Mpfr.t -> unit = "camlidl_mpfr_mpfr_set_nan"
external swap : Mpfr.t -> Mpfr.t -> unit = "camlidl_mpfr_mpfr_swap"
external init_set : Mpfr.t -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set"
external init_set_si : int -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set_si"
external init_set_d : float -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set_d"
external init_set_f : Mpf.t -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set_f"
external init_set_z : Mpz.t -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set_z"
external init_set_q : Mpq.t -> Mpfr.round -> int * Mpfr.t
= "camlidl_mpfr_mpfr_init_set_q"
external _init_set_str : string -> int -> Mpfr.round -> Mpfr.t
= "camlidl_mpfr_mpfr__init_set_str"
val init_set_str : string -> base:int -> Mpfr.round -> Mpfr.t
external get_d : Mpfr.t -> Mpfr.round -> float = "camlidl_mpfr_mpfr_get_d"
external get_d1 : Mpfr.t -> float = "camlidl_mpfr_mpfr_get_d1"
external get_z_exp : Mpz.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_get_z_exp"
external get_z : Mpz.t -> Mpfr.t -> Mpfr.round -> unit
= "camlidl_mpfr_mpfr_get_z"
external _get_str : int -> int -> Mpfr.t -> Mpfr.round -> string * int
= "camlidl_mpfr_mpfr__get_str"
val get_str :
base:int -> digits:int -> Mpfr.t -> Mpfr.round -> string * int
val to_string : Mpfr.t -> string
val to_float : ?round:Mpfr.round -> Mpfr.t -> float
val to_mpq : Mpfr.t -> Mpq.t
val of_string : string -> Mpfr.round -> Mpfr.t
val of_float : float -> Mpfr.round -> Mpfr.t
val of_int : int -> Mpfr.round -> Mpfr.t
val of_frac : int -> int -> Mpfr.round -> Mpfr.t
val of_mpz : Mpz.t -> Mpfr.round -> Mpfr.t
val of_mpz2 : Mpz.t -> Mpz.t -> Mpfr.round -> Mpfr.t
val of_mpq : Mpq.t -> Mpfr.round -> Mpfr.t
external add : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_add"
external add_ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_add_ui"
external add_z : Mpfr.t -> Mpfr.t -> Mpz.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_add_z"
external add_q : Mpfr.t -> Mpfr.t -> Mpq.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_add_q"
external sub : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sub"
external ui_sub : Mpfr.t -> int -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_ui_sub"
external sub_ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sub_ui"
external sub_z : Mpfr.t -> Mpfr.t -> Mpz.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sub_z"
external sub_q : Mpfr.t -> Mpfr.t -> Mpq.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sub_q"
external mul : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul"
external mul_ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_ui"
external mul_z : Mpfr.t -> Mpfr.t -> Mpz.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_z"
external mul_q : Mpfr.t -> Mpfr.t -> Mpq.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_q"
external mul_2ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_2ui"
external mul_2si : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_2si"
external mul_2exp : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_mul_2exp"
external div : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div"
external ui_div : Mpfr.t -> int -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_ui_div"
external div_ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div_ui"
external div_z : Mpfr.t -> Mpfr.t -> Mpz.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div_z"
external div_q : Mpfr.t -> Mpfr.t -> Mpq.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div_q"
external div_2ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div_2ui"
external div_2si : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_div_2si"
val div_2exp : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> int
external sqrt : Mpfr.t -> Mpfr.t -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_sqrt"
external sqrt_ui : Mpfr.t -> int -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_sqrt_ui"
external pow_ui : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_pow_ui"
external pow_si : Mpfr.t -> Mpfr.t -> int -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_pow_si"
external ui_pow_ui : Mpfr.t -> int -> int -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_ui_pow_ui"
external ui_pow : Mpfr.t -> int -> Mpfr.t -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_ui_pow"
external pow : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_pow"
external neg : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_neg"
external abs : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_abs"
external cmp : Mpfr.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_cmp"
external cmp_si : Mpfr.t -> int -> int = "camlidl_mpfr_mpfr_cmp_si"
external cmp_si_2exp : Mpfr.t -> int -> int -> int
= "camlidl_mpfr_mpfr_cmp_si_2exp"
external sgn : Mpfr.t -> int = "camlidl_mpfr_mpfr_sgn"
external _equal : Mpfr.t -> Mpfr.t -> int -> bool
= "camlidl_mpfr_mpfr__equal"
val equal : Mpfr.t -> Mpfr.t -> bits:int -> bool
external nan_p : Mpfr.t -> bool = "camlidl_mpfr_mpfr_nan_p"
external inf_p : Mpfr.t -> bool = "camlidl_mpfr_mpfr_inf_p"
external number_p : Mpfr.t -> bool = "camlidl_mpfr_mpfr_number_p"
external reldiff : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> unit
= "camlidl_mpfr_mpfr_reldiff"
external log : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_log"
external log2 : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_log2"
external log10 : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_log10"
external exp : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_exp"
external exp2 : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_exp2"
external exp10 : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_exp10"
external cos : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_cos"
external sin : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sin"
external tan : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_tan"
external sec : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sec"
external csc : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_csc"
external cot : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_cot"
external sin_cos : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> bool
= "camlidl_mpfr_mpfr_sin_cos"
external acos : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_acos"
external asin : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_asin"
external atan : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_atan"
external atan2 : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_atan2"
external cosh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_cosh"
external sinh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sinh"
external tanh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_tanh"
external sech : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_sech"
external csch : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_csch"
external coth : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_coth"
external acosh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_acosh"
external asinh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_asinh"
external atanh : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_atanh"
external fac_ui : Mpfr.t -> int -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_fac_ui"
external log1p : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_log1p"
external expm1 : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_expm1"
external eint : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_eint"
external gamma : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_gamma"
external lngamma : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_lngamma"
external zeta : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_zeta"
external erf : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_erf"
external erfc : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_erfc"
external fma : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_fma"
external agm : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_agm"
external hypot : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_hypot"
external const_log2 : Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_const_log2"
external const_pi : Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_const_pi"
external const_euler : Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_const_euler"
external const_catalan : Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_const_catalan"
external rint : Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_rint"
external ceil : Mpfr.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_ceil"
external floor : Mpfr.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_floor"
external round : Mpfr.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_round"
external trunc : Mpfr.t -> Mpfr.t -> int = "camlidl_mpfr_mpfr_trunc"
external integer_p : Mpfr.t -> bool = "camlidl_mpfr_mpfr_integer_p"
external nexttoward : Mpfr.t -> Mpfr.t -> unit
= "camlidl_mpfr_mpfr_nexttoward"
external nextabove : Mpfr.t -> unit = "camlidl_mpfr_mpfr_nextabove"
external nextbelow : Mpfr.t -> unit = "camlidl_mpfr_mpfr_nextbelow"
external min : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_min"
external max : Mpfr.t -> Mpfr.t -> Mpfr.t -> Mpfr.round -> int
= "camlidl_mpfr_mpfr_max"
external get_exp : Mpfr.t -> int = "camlidl_mpfr_mpfr_get_exp"
external set_exp : Mpfr.t -> int -> int = "camlidl_mpfr_mpfr_set_exp"
end`