sig
type t = Int | Real | Nonint
val eq : Dom.t -> Dom.t -> bool
val cmp : Dom.t -> Dom.t -> int
val sub : Dom.t -> Dom.t -> bool
val disjoint : Dom.t -> Dom.t -> bool
val union : Dom.t -> Dom.t -> Dom.t
exception Empty
val inter : Dom.t -> Dom.t -> Dom.t
val inj : Dom.t -> Dom.t option
val multq : Mpa.Q.t -> Dom.t -> Dom.t
val add : Dom.t -> Dom.t -> Dom.t
val addl : Dom.t list -> Dom.t
val expt : int -> Dom.t -> Dom.t
val mult : Dom.t -> Dom.t -> Dom.t
val multl : Dom.t list -> Dom.t
val of_q : Mpa.Q.t -> Dom.t
val mem : Mpa.Q.t -> Dom.t -> bool
val pp : Dom.t Pretty.printer
val to_string : Dom.t -> string
end