include sig ... end
val remove : elt -> t -> tval disjoint : t -> t -> boolval elements : t -> elt listval min_elt_opt : t -> elt optionval max_elt_opt : t -> elt optionval choose_opt : t -> elt optionval find_opt : elt -> t -> elt optionval find_first : f:(elt -> bool) -> t -> eltval find_first_opt : f:(elt -> bool) -> t -> elt optionval find_last : f:(elt -> bool) -> t -> eltval find_last_opt : f:(elt -> bool) -> t -> elt optionval iter : f:(elt -> unit) -> t -> unitval fold : f:(elt -> 'acc -> 'acc) -> t -> init:'acc -> 'accval filter : f:(elt -> bool) -> t -> tval filter_map : f:(elt -> elt option) -> t -> tval partition : f:(elt -> bool) -> t -> t * tval split : elt -> t -> t * bool * tval mem : elt -> t -> boolval equal : t -> t -> boolval compare : t -> t -> intval subset : t -> t -> boolval for_all : f:(elt -> bool) -> t -> boolval exists : f:(elt -> bool) -> t -> boolval of_list : elt list -> tval to_list : t -> elt list