sig   type t   val max_elt : Cis.t -> int   val min_elt : Cis.t -> int   val append : Cis.t -> Cis.t -> Cis.t   val empty : Cis.t   val is_empty : Cis.t -> bool   val cardinal : Cis.t -> int   val mem : int -> Cis.t -> bool   val singleton : int -> Cis.t   val add : int -> Cis.t -> Cis.t   val remove : int -> Cis.t -> Cis.t   val of_list : int list -> Cis.t   val union : Cis.t -> Cis.t -> Cis.t   val inter : Cis.t -> Cis.t -> Cis.t   val diff : Cis.t -> Cis.t -> Cis.t   val subset : Cis.t -> Cis.t -> bool   val equal : Cis.t -> Cis.t -> bool   val iter : (int -> unit) -> Cis.t -> unit   val fold_left : ('a -> int -> 'a) -> 'a -> Cis.t -> 'a   val fold_right : (int -> 'a -> 'a) -> Cis.t -> 'a -> 'a   val elements : Cis.t -> int list end