Module PulseFormulaPhi.VarUF

type t
val compare : t Base__Ppx_compare_lib.compare
val equal : t Base__Ppx_compare_lib.equal
val pp : (IStdlib__UnionFind.F.formatter -> Var.t -> unit) -> IStdlib__UnionFind.F.formatter -> t -> unit
type repr = Var.t
val compare_repr : repr -> repr -> int
val equal_repr : repr -> repr -> bool
val empty : t
val is_empty : t -> bool
val union : t -> Var.t -> Var.t -> t * (Var.t * repr) option
val find : t -> Var.t -> repr
val fold_congruences : (t, repr * Var.Set.t, 'acc) Core.Container.fold
val reorient : should_keep:(Var.t -> bool) -> t -> Var.t Var.Map.t
val apply_subst : 'a Var.Map.t -> t -> t
val remove : Var.t -> t -> t
val filter : f:(Var.t -> bool) -> t -> t
val fold_elements : (t, Var.t, 'acc) Core.Container.fold