Partition
Union-find based partitions
module type Elt = sig ... end
module type Set = sig ... end
module type Map = sig ... end
module Make (E : Elt) (S : Set with type elt = E.t) (_ : Map with type key = E.t) : sig ... end