sig
module Make :
functor (Ord : Set.OrderedType) ->
sig
type elt = Ord.t
type t
val empty : t
val is_empty : t -> bool
val mem : t -> elt -> bool
val add : t -> elt -> t
val singleton : elt -> t
val remove : t -> elt -> t
val cardinal : t -> int
val union : t -> t -> t
val intersectp : t -> t -> bool
val iter : (elt -> unit) -> t -> unit
val mem_filt : t -> elt list -> elt list
val fst_mem_filt : t -> (elt * 'a) list -> (elt * 'a) list
val not_mem_filt : t -> elt list -> elt list
val of_sorted_list : elt list -> t
val of_list : elt list -> t
val to_list : t -> elt list
val elements : t -> elt list
end
end