sig
  external ( +! ) : Gmp.Z.t -> Gmp.Z.t -> Gmp.Z.t = "_mlgmp_z_add"
  external ( -! ) : Gmp.Z.t -> Gmp.Z.t -> Gmp.Z.t = "_mlgmp_z_sub"
  external ( *! ) : Gmp.Z.t -> Gmp.Z.t -> Gmp.Z.t = "_mlgmp_z_mul"
  external ( /! ) : Gmp.Z.t -> Gmp.Z.t -> Gmp.Z.t = "_mlgmp_z_fdiv_q"
  external ( %! ) : Gmp.Z.t -> Gmp.Z.t -> Gmp.Z.t = "_mlgmp_z_fdiv_r"
  val ( <! ) : Gmp.Z.t -> Gmp.Z.t -> bool
  val ( <=! ) : Gmp.Z.t -> Gmp.Z.t -> bool
  val ( =! ) : Gmp.Z.t -> Gmp.Z.t -> bool
  val ( >=! ) : Gmp.Z.t -> Gmp.Z.t -> bool
  val ( >! ) : Gmp.Z.t -> Gmp.Z.t -> bool
  val ( <>! ) : Gmp.Z.t -> Gmp.Z.t -> bool
end