sig   val empty : set   val is_empty : set -> bool   val mem : t -> set -> bool   val add : t -> set -> set   val singleton : t -> set   val remove : t -> set -> set   val union : set -> set -> set   val inter : set -> set -> set   val diff : set -> set -> set   val compare : set -> set -> int   val equal : set -> set -> bool   val subset : set -> set -> bool   val iter : (t -> unit) -> set -> unit   val fold : (t -> '-> 'a) -> set -> '-> 'a   val for_all : (t -> bool) -> set -> bool   val exists : (t -> bool) -> set -> bool   val filter : (t -> bool) -> set -> set   val partition : (t -> bool) -> set -> set * set   val cardinal : set -> int   val elements : set -> t list   val min_elt : set -> t   val max_elt : set -> t   val choose : set -> t   val split : t -> set -> set * bool * set   val find : t -> set -> t   val of_list : t list -> set   val pp : ?sep:unit B0.Fmt.t -> B0.Unit.t B0.Fmt.t -> B0.Unit.set B0.Fmt.t   type t = B0.Unit.set end