instance
Aesop.instInhabitedUnionFind :
{a : Type u_1} → {a_1 : BEq a} → {a_2 : Hashable a} → Inhabited (Aesop.UnionFind a)
Equations
- Aesop.instInhabitedUnionFind = { default := { parents := default, sizes := default, toRep := default } }
Equations
- Aesop.UnionFind.size u = Array.size u.parents
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
Aesop.UnionFind.addArray
{α : Type u_1}
[BEq α]
[Hashable α]
(xs : Array α)
(u : Aesop.UnionFind α)
:
Equations
- Aesop.UnionFind.addArray xs u = Array.foldl (fun u x => Aesop.UnionFind.add x u) u xs 0 (Array.size xs)
Instances For
Equations
Instances For
Equations
- Aesop.UnionFind.find? x u = match Std.HashMap.find? u.toRep x with | none => (none, u) | some rep => match Aesop.UnionFind.findRep rep u with | (rep, u) => (some rep, u)
Instances For
@[implemented_by _private.Aesop.Util.UnionFind.0.Aesop.UnionFind.mergeUnsafe]
def
Aesop.UnionFind.sets
{α : Type v}
[BEq α]
[Hashable α]
(u : Aesop.UnionFind α)
:
Array (Array α) × Aesop.UnionFind α
Equations
- One or more equations did not get rendered due to their size.