Module TERMS.UnionFind
Union find structure: some terms points to their parents through the set of relations, allowing for accurate representation of relations in the group and storing fewer independent terms.
type 'a t = 'a ttype ('a, 'b) relation = ('a, 'b) Relation.ttype 'a node_through_relation = | NodeThoughRelation : 'b t * ('a, 'b) relation -> 'a node_through_relation
Existential wrapper for returning the representative
val find_representative : 'a t -> 'a node_through_relationFind the representative of a node, and the associated relation
check_related a b returns the relation between a and b if they are in the same class.