module Mpz:GMP multi-precision integerssig..end
type t
set, add, ...) the first parameter of type t is an out-parameter and holds the result when the function returns. For instance, add x y z adds the values of y and z and stores the result in x.
These functions are as efficient as their C counterpart: they do not imply additional memory allocation, unlike the corresponding functions in the module Mpzf.
val print : Format.formatter -> t -> unitval init : unit -> tval init2 : int -> tval realloc2 : t -> int -> unitval set : t -> t -> unitval set_si : t -> int -> unitval set_d : t -> float -> unitset_q: t -> Mpq.t -> unit, see Mpq.get_zval _set_str : t -> string -> int -> unitval set_str : t -> string -> base:int -> unitval swap : t -> t -> unitval init_set : t -> tval init_set_si : int -> tval init_set_d : float -> tval _init_set_str : string -> int -> tval init_set_str : string -> base:int -> tval get_si : t -> nativeintval get_int : t -> intval get_d : t -> floatval get_d_2exp : t -> float * intval _get_str : int -> t -> stringval get_str : base:int -> t -> stringval to_string : t -> stringval to_float : t -> floatval of_string : string -> tval of_float : float -> tval of_int : int -> tval add : t -> t -> t -> unitval add_ui : t -> t -> int -> unitval sub : t -> t -> t -> unitval sub_ui : t -> t -> int -> unitval ui_sub : t -> int -> t -> unitval mul : t -> t -> t -> unitval mul_si : t -> t -> int -> unitval addmul : t -> t -> t -> unitval addmul_ui : t -> t -> int -> unitval submul : t -> t -> t -> unitval submul_ui : t -> t -> int -> unitval mul_2exp : t -> t -> int -> unitval neg : t -> t -> unitval abs : t -> t -> unitc stands for ceiling, f for floor, and t for truncate (rounds toward 0).val cdiv_q : t -> t -> t -> unitval cdiv_r : t -> t -> t -> unitval cdiv_qr : t -> t -> t -> t -> unitval cdiv_q_ui : t -> t -> int -> intval cdiv_r_ui : t -> t -> int -> intval cdiv_qr_ui : t -> t -> t -> int -> intval cdiv_ui : t -> int -> intval cdiv_q_2exp : t -> t -> int -> unitval cdiv_r_2exp : t -> t -> int -> unitval fdiv_q : t -> t -> t -> unitval fdiv_r : t -> t -> t -> unitval fdiv_qr : t -> t -> t -> t -> unitval fdiv_q_ui : t -> t -> int -> intval fdiv_r_ui : t -> t -> int -> intval fdiv_qr_ui : t -> t -> t -> int -> intval fdiv_ui : t -> int -> intval fdiv_q_2exp : t -> t -> int -> unitval fdiv_r_2exp : t -> t -> int -> unitval tdiv_q : t -> t -> t -> unitval tdiv_r : t -> t -> t -> unitval tdiv_qr : t -> t -> t -> t -> unitval tdiv_q_ui : t -> t -> int -> intval tdiv_r_ui : t -> t -> int -> intval tdiv_qr_ui : t -> t -> t -> int -> intval tdiv_ui : t -> int -> intval tdiv_q_2exp : t -> t -> int -> unitval tdiv_r_2exp : t -> t -> int -> unitval gmod : t -> t -> t -> unitval gmod_ui : t -> t -> int -> intval divexact : t -> t -> t -> unitval divexact_ui : t -> t -> int -> unitval divisible_p : t -> t -> boolval divisible_ui_p : t -> int -> boolval divisible_2exp_p : t -> int -> boolval congruent_p : t -> t -> t -> boolval congruent_ui_p : t -> int -> int -> boolval congruent_2exp_p : t -> t -> int -> boolval _powm : t -> t -> t -> t -> unitval _powm_ui : t -> t -> int -> t -> unitval powm : t -> t -> t -> modulo:t -> unitval powm_ui : t -> t -> int -> modulo:t -> unitval pow_ui : t -> t -> int -> unitval ui_pow_ui : t -> int -> int -> unitval root : t -> t -> int -> boolval sqrt : t -> t -> unitval _sqrtrem : t -> t -> t -> unitval sqrtrem : t -> remainder:t -> t -> unitval perfect_power_p : t -> boolval perfect_square_p : t -> boolval probab_prime_p : t -> int -> intval nextprime : t -> t -> unitval gcd : t -> t -> t -> unitval gcd_ui : t option -> t -> int -> intval _gcdext : t -> t -> t -> t -> t -> unitval gcdext : gcd:t -> alpha:t -> beta:t -> t -> t -> unitval lcm : t -> t -> t -> unitval lcm_ui : t -> t -> int -> unitval invert : t -> t -> t -> boolval jacobi : t -> t -> intval legendre : t -> t -> intval kronecker : t -> t -> intval kronecker_si : t -> int -> intval si_kronecker : int -> t -> intval remove : t -> t -> t -> intval fac_ui : t -> int -> unitval bin_ui : t -> t -> int -> unitval bin_uiui : t -> int -> int -> unitval fib_ui : t -> int -> unitval fib2_ui : t -> t -> int -> unitval lucnum_ui : t -> int -> unitval lucnum2_ui : t -> t -> int -> unitval cmp : t -> t -> intval cmp_d : t -> float -> intval cmp_si : t -> int -> intval cmpabs : t -> t -> intval cmpabs_d : t -> float -> intval cmpabs_ui : t -> int -> intval sgn : t -> intval gand : t -> t -> t -> unitval ior : t -> t -> t -> unitval xor : t -> t -> t -> unitval com : t -> t -> unitval popcount : t -> intval hamdist : t -> t -> intval scan0 : t -> int -> intval scan1 : t -> int -> intval setbit : t -> int -> unitval clrbit : t -> int -> unitval tstbit : t -> int -> boolGmp_random moduleval _import : t ->
(int, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.t ->
int -> int -> unitval _export : t ->
int -> int -> (int, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.tval import : dest:t ->
(int, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.t ->
order:int -> endian:int -> unitval export : t ->
order:int ->
endian:int -> (int, Bigarray.int32_elt, Bigarray.c_layout) Bigarray.Array1.tval fits_int_p : t -> boolval odd_p : t -> boolval even_p : t -> boolval size : t -> intval sizeinbase : t -> int -> intval fits_ulong_p : t -> boolval fits_slong_p : t -> boolval fits_uint_p : t -> boolval fits_sint_p : t -> boolval fits_ushort_p : t -> boolval fits_sshort_p : t -> bool