sig   type elt = int   type t   val empty : Facile.Domain.t   val create : Facile.Domain.elt list -> Facile.Domain.t   val unsafe_create : Facile.Domain.elt list -> Facile.Domain.t   val interval : Facile.Domain.elt -> Facile.Domain.elt -> Facile.Domain.t   val int : Facile.Domain.t   val boolean : Facile.Domain.t   val is_empty : Facile.Domain.t -> bool   val size : Facile.Domain.t -> Facile.Domain.elt   val min : Facile.Domain.t -> Facile.Domain.elt   val max : Facile.Domain.t -> Facile.Domain.elt   val min_max : Facile.Domain.t -> Facile.Domain.elt * Facile.Domain.elt   val iter : (Facile.Domain.elt -> unit) -> Facile.Domain.t -> unit   val interval_iter :     (Facile.Domain.elt -> Facile.Domain.elt -> unit) ->     Facile.Domain.t -> unit   val member : Facile.Domain.elt -> Facile.Domain.t -> bool   val values : Facile.Domain.t -> Facile.Domain.elt list   val fprint_elt : Pervasives.out_channel -> Facile.Domain.elt -> unit   val fprint : Pervasives.out_channel -> Facile.Domain.t -> unit   val sprint : Facile.Domain.t -> string   val included : Facile.Domain.t -> Facile.Domain.t -> bool   val add : Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val remove : Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val remove_up : Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val remove_low : Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val remove_low_up :     Facile.Domain.elt ->     Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val remove_closed_inter :     Facile.Domain.elt ->     Facile.Domain.elt -> Facile.Domain.t -> Facile.Domain.t   val intersection : Facile.Domain.t -> Facile.Domain.t -> Facile.Domain.t   val union : Facile.Domain.t -> Facile.Domain.t -> Facile.Domain.t   val difference : Facile.Domain.t -> Facile.Domain.t -> Facile.Domain.t   val diff : Facile.Domain.t -> Facile.Domain.t -> Facile.Domain.t   val remove_min : Facile.Domain.t -> Facile.Domain.t   val minus : Facile.Domain.t -> Facile.Domain.t   val plus : Facile.Domain.t -> Facile.Domain.elt -> Facile.Domain.t   val times : Facile.Domain.t -> Facile.Domain.elt -> Facile.Domain.t   val smallest_geq :     Facile.Domain.t -> Facile.Domain.elt -> Facile.Domain.elt   val greatest_leq :     Facile.Domain.t -> Facile.Domain.elt -> Facile.Domain.elt   val largest_hole_around :     Facile.Domain.t ->     Facile.Domain.elt -> Facile.Domain.elt * Facile.Domain.elt   val choose :     (Facile.Domain.elt -> Facile.Domain.elt -> bool) ->     Facile.Domain.t -> Facile.Domain.elt   val compare : Facile.Domain.t -> Facile.Domain.t -> Facile.Domain.elt   val compare_elt :     Facile.Domain.elt -> Facile.Domain.elt -> Facile.Domain.elt   val disjoint : Facile.Domain.t -> Facile.Domain.t -> bool end