sig   module S :     sig       type t = Fcl_domain.t       val empty : Fcl_setDomain.S.t       val is_empty : Fcl_setDomain.S.t -> bool       val mem : int -> Fcl_setDomain.S.t -> bool       val add : int -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val singleton : int -> Fcl_setDomain.S.t       val remove : int -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val union : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val inter : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val diff : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val compare : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> int       val equal : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> bool       val subset : Fcl_setDomain.S.t -> Fcl_setDomain.S.t -> bool       val iter : (int -> unit) -> Fcl_setDomain.S.t -> unit       val cardinal : Fcl_setDomain.S.t -> int       val elements : Fcl_setDomain.S.t -> int list       val min_elt : Fcl_setDomain.S.t -> int       val max_elt : Fcl_setDomain.S.t -> int       val choose : Fcl_setDomain.S.t -> int       val remove_up : int -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t       val remove_low : int -> Fcl_setDomain.S.t -> Fcl_setDomain.S.t     end   type elt = Fcl_setDomain.S.t   type t   val elt_of_list : int list -> Fcl_setDomain.elt   val interval : Fcl_setDomain.elt -> Fcl_setDomain.elt -> Fcl_setDomain.t   val size : Fcl_setDomain.t -> int   val min : Fcl_setDomain.t -> Fcl_setDomain.elt   val max : Fcl_setDomain.t -> Fcl_setDomain.elt   val min_max : Fcl_setDomain.t -> Fcl_setDomain.elt * Fcl_setDomain.elt   val fprint_elt : Pervasives.out_channel -> Fcl_setDomain.elt -> unit   val fprint : Pervasives.out_channel -> Fcl_setDomain.t -> unit   val mem : Fcl_setDomain.elt -> Fcl_setDomain.t -> bool   val included : Fcl_setDomain.t -> Fcl_setDomain.t -> bool   val iter : (Fcl_setDomain.elt -> 'a) -> Fcl_setDomain.t -> 'a   val values : Fcl_setDomain.t -> Fcl_setDomain.elt list   val intersection :     Fcl_setDomain.elt -> Fcl_setDomain.elt -> Fcl_setDomain.elt   val strictly_inf : Fcl_setDomain.elt -> Fcl_setDomain.elt -> bool   val compare_elt : Fcl_setDomain.elt -> Fcl_setDomain.elt -> int   val unsafe_interval :     Fcl_setDomain.elt -> Fcl_setDomain.elt -> Fcl_setDomain.t   val remove_up : Fcl_setDomain.elt -> Fcl_setDomain.t -> Fcl_setDomain.t   val remove_low : Fcl_setDomain.elt -> Fcl_setDomain.t -> Fcl_setDomain.t end