The spanning-tree computation for finite quivers #
This file builds the combinatorial fundamental group of a finite weakly connected quiver from Mathlib's free groupoid and identifies a basis indexed by the edges outside a geodesic spanning tree.
Identifies total arrows of a wide subquiver with their endpoints and underlying arrow.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The finite structure on the total arrows of a finite wide subquiver.
Equations
- FiniteGraphFreeGroup.totalFintype T = Fintype.ofEquiv ((a : V) × (b : V) × { e : a ⟶ b // e ∈ T a b }) (FiniteGraphFreeGroup.totalEquiv T).symm
Instances For
Equations
- FiniteGraphFreeGroup.wideSubquiverHomFintype T a b = Fintype.subtype {e : a ⟶ b | e ∈ T a b} ⋯
Equations
Identifies total arrows of a quiver with their endpoints and arrow data.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The finite structure on total arrows of a finite quiver.
Equations
- FiniteGraphFreeGroup.baseTotalFintype = Fintype.ofEquiv ((a : V) × (b : V) × (a ⟶ b)) (FiniteGraphFreeGroup.baseTotalEquiv V).symm
Instances For
Equations
Equations
Identifies a wide subquiver's total arrows with the corresponding subset of base arrows.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The penultimate vertex, prefix path, and last edge of the rooted path to a non-root vertex.
Equations
Instances For
Identifies the edges of an arborescence with its non-root vertices.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Forgets the orientation tag on an edge of a symmetric wide subquiver.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Recovers the uniquely oriented tree edge from its underlying graph edge.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equates oriented tree edges with the underlying edges of the symmetrified subquiver.
Equations
- FiniteGraphFreeGroup.symEdgeEquiv T = { toFun := FiniteGraphFreeGroup.symEdgeForget T, invFun := FiniteGraphFreeGroup.symEdgeForgetInv T, left_inv := ⋯, right_inv := ⋯ }
Instances For
The free-group basis obtained from the arrows outside a spanning tree.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
A quiver whose symmetrification has a path between every pair of vertices.
- path (a b : V) : Nonempty (Quiver.Path a b)
Instances
Identifies the objects of the generated free groupoid with graph vertices.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The number of vertices in a finite graph.
Equations
Instances For
The total number of directed edges in a finite quiver.
Equations
Instances For
The graph cycle rank, written to account for truncated subtraction in ℕ.
The spanning-tree inequality below identifies it with E - (V - 1) for a weakly
connected graph.
Equations
Instances For
The endomorphism group at a root in the free groupoid generated by the graph.
Equations
Instances For
The canonical geodesic spanning tree rooted at the chosen graph vertex.
Equations
- FiniteGraphFreeGroup.graphTree root = Quiver.geodesicSubtree ((Quiver.FreeGroupoid.of V).obj root)
Instances For
Equations
Identifies total free-groupoid generator arrows with total graph arrows.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The complement of the geodesic tree, indexed by the actual non-tree generator arrows.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
The final theorem is kept in the original statement form for the Palomar
Challenge/Solution correspondence. The reusable, basis-valued API and
the consequences of the computation live in Consequences.lean.