module type S = sig include Set.S val exists_opt: (elt -> 'a option) -> t -> 'a option end module Make(Elt: Set.OrderedType): S with type elt = Elt.t and type t = Set.Make(Elt).t