functor (S : Set.S) -> functor (P : sig type t = S.elt val to_string : t -> string end) -> sig val equal : ?msg:string -> S.t -> S.t -> unit val not_equal : ?msg:string -> S.t -> S.t -> unit end