sig
  type t
  external create : unit -> Gmp.Q.t = "_mlgmp_q_create"
  external from_z : Gmp.Z.t -> Gmp.Q.t = "_mlgmp_q_from_z"
  external from_si : int -> int -> Gmp.Q.t = "_mlgmp_q_from_si"
  external from_ints : int -> int -> Gmp.Q.t = "_mlgmp_q_from_si"
  val from_int : int -> Gmp.Q.t
  external from_float : float -> Gmp.Q.t = "_mlgmp_q_from_float"
  external float_from : Gmp.Q.t -> float = "_mlgmp_q_to_float"
  external to_float : Gmp.Q.t -> float = "_mlgmp_q_to_float"
  external add : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_add"
  external sub : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_sub"
  external mul : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_mul"
  external div : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_div"
  external neg : Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_neg"
  external inv : Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_inv"
  external get_num : Gmp.Q.t -> Gmp.Z.t = "_mlgmp_q_get_num"
  external get_den : Gmp.Q.t -> Gmp.Z.t = "_mlgmp_q_get_den"
  external cmp : Gmp.Q.t -> Gmp.Q.t -> int = "_mlgmp_q_cmp"
  external compare : Gmp.Q.t -> Gmp.Q.t -> int = "_mlgmp_q_cmp"
  external cmp_ui : Gmp.Q.t -> int -> int -> int = "_mlgmp_q_cmp_ui"
  external sgn : Gmp.Q.t -> int = "_mlgmp_q_sgn"
  val zero : Gmp.Q.t
  val is_zero : Gmp.Q.t -> bool
  val from_zs : Gmp.Z.t -> Gmp.Z.t -> Gmp.Q.t
  val equal : Gmp.Q.t -> Gmp.Q.t -> bool
  val output : Stdlib.out_channel -> Gmp.Q.t -> unit
  val to_string : Gmp.Q.t -> string
  val sprintf : unit -> Gmp.Q.t -> string
  module Infixes :
    sig
      external ( +/ ) : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_add"
      external ( -/ ) : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_sub"
      external ( */ ) : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_mul"
      external ( // ) : Gmp.Q.t -> Gmp.Q.t -> Gmp.Q.t = "_mlgmp_q_div"
      val ( </ ) : Gmp.Q.t -> Gmp.Q.t -> bool
      val ( <=/ ) : Gmp.Q.t -> Gmp.Q.t -> bool
      val ( =/ ) : Gmp.Q.t -> Gmp.Q.t -> bool
      val ( >=/ ) : Gmp.Q.t -> Gmp.Q.t -> bool
      val ( >/ ) : Gmp.Q.t -> Gmp.Q.t -> bool
      val ( <>/ ) : Gmp.Q.t -> Gmp.Q.t -> bool
    end
end