Relabelling darts and padding with loops #
Two bookkeeping operations on regular graphs, both preserving the spectral bound in an explicit way.
Relabelling the dart type along an equivalence. Constructions produce structured dart types — pairs, functions, sums — while
ExpanderFamilywantsFin degree. The step operator is unchanged, so the bound is.Padding with self-loops, to raise the degree of a graph to a prescribed value. The new step is a convex combination of the old step and the identity, so by Jensen the bound becomes
μ² = α λ² + (1 - α)withαthe fraction of real darts.
Main definitions #
Complexity.RegGraph.relabel— the same graph with darts renamedComplexity.RegGraph.padLoops— the graph withkself-loops added at every vertex
Main results #
Complexity.RegGraph.spectralBound_relabelComplexity.RegGraph.spectralBound_padLoopsComplexity.RegGraph.relabelV,Complexity.RegGraph.spectralBound_relabelV— renaming verticesComplexity.RegGraph.toFinForm— the same graph with both types numbered
Relabelling #
The same graph with its darts renamed along e.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Padding with loops #
The graph with k self-loops added at every vertex.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Renaming vertices #
The same graph with its vertices renamed along e. Constructions produce
structured vertex types — products, sums — while a family wants Fin n.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Numbering both types #
The same graph with its vertices numbered Fin order and its darts
Fin deg. Constructions build structured types; the merge and the expander
families want numbered ones.
Equations
- G.toFinForm = (G.relabelV (Fintype.equivFin G.V)).relabel (Fintype.equivFin G.D)
Instances For
The same graph numbered at sizes supplied by the caller, so that the
rotation map has the literal type Fin N × Fin d → Fin N × Fin d a numeric
construction expects, with no transport at the use site.
Equations
- G.toFinFormOf N d hN hd = (G.relabelV ((Fintype.equivFin G.V).trans (finCongr hN))).relabel ((Fintype.equivFin G.D).trans (finCongr hd))
Instances For
Its vertices are literally numbered.
And so are its darts.