Doubled quivers of simple graphs #
The doubled quiver of a simple graph has the graph's vertices and one arrow in each direction over every edge. Since adjacency in a simple graph is a proposition, this quiver is thin: it has no loops or parallel arrows. Its canonical arrow reversal comes from symmetry of adjacency.
This file relates the quiver API to Mathlib's graph API. Total arrows are identified with graph darts, stars and costars are identified with neighbor sets, and their cardinalities recover the adjacency matrix, vertex degrees, and twice the number of edges. A graph homomorphism acts on doubled quivers by a reversal-preserving prefunctor, and a graph isomorphism gives mutually inverse prefunctors.
Main definitions #
TauCeti.DoubledQuiver: the doubled quiver attached to a simple graph.TauCeti.DoubledQuiver.totalArrowEquivDart: its arrows are the graph's darts.TauCeti.DoubledQuiver.map: the prefunctor induced by a graph homomorphism.
Main results #
TauCeti.DoubledQuiver.card_hom_eq_adjMatrix: arrow counts are adjacency-matrix entries.TauCeti.DoubledQuiver.card_totalArrow_eq_twice_card_edges: every edge gives two arrows.TauCeti.DoubledQuiver.map_toHom_comp_symm_toHomandTauCeti.DoubledQuiver.map_symm_toHom_comp_toHom: graph isomorphisms induce inverse prefunctors.TauCeti.DoubledQuiver.map_obj_bijective: a graph isomorphism relabels the doubled-quiver vertices bijectively.
References #
This is the doubled-graph construction in Layer 0 of
TauCetiRoadmap/ZigzagPreprojective/README.md; its interface follows the target-signature
prototype in TauCetiRoadmap/ZigzagPreprojective/Suggested.lean. See Huerfano--Khovanov,
A category for the adjoint representation, Section 3.
The doubled quiver of a simple graph. Its vertices are the graph's vertices, and there is one
arrow i ⟶ j for every proof that i and j are adjacent.
Equations
- TauCeti.DoubledQuiver _G = V
Instances For
Include a graph vertex into the vertex type of its doubled quiver.
Equations
Instances For
The graph vertices and the doubled-quiver vertices are canonically equivalent.
Equations
- TauCeti.DoubledQuiver.vertexEquiv G = { toFun := TauCeti.DoubledQuiver.vertex G, invFun := fun (v : TauCeti.DoubledQuiver G) => v, left_inv := ⋯, right_inv := ⋯ }
Instances For
Every vertex of the doubled quiver comes from a vertex of the graph.
The vertex inclusion of a doubled quiver is injective.
Two graph vertices have the same image in the doubled quiver exactly when they are equal.
Equations
- One or more equations did not get rendered due to their size.
Equations
Equations
- TauCeti.DoubledQuiver.instHasReverse G = { reverse' := fun {a b : TauCeti.DoubledQuiver G} (e : a ⟶ b) => { down := ⋯ } }
Equations
- TauCeti.DoubledQuiver.instHasInvolutiveReverse G = { toHasReverse := inferInstance, inv' := ⋯ }
The arrow of the doubled quiver corresponding to an adjacency.
Equations
- TauCeti.DoubledQuiver.arrow G h = { down := ⋯ }
Instances For
Reversing the arrow induced by an adjacency gives the arrow induced by symmetric adjacency.
There is an arrow from i to j exactly when the vertices are adjacent.
All arrows in the doubled quiver, with their source and target.
Equations
- TauCeti.DoubledQuiver.TotalArrow G = ((i : TauCeti.DoubledQuiver G) × (j : TauCeti.DoubledQuiver G) × (i ⟶ j))
Instances For
The total arrows of the doubled quiver are the oriented edges, or darts, of the graph.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Reverse a total arrow, exchanging its source and target.
Equations
Instances For
The arrows leaving a vertex are its neighbors in the graph.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The star at a doubled-quiver vertex is finite whenever its neighbor set is finite.
Equations
If every graph neighbor set is finite, then every star of its doubled quiver is finite.
Equations
- One or more equations did not get rendered due to their size.
The arrows entering a vertex are also its neighbors in the graph.
Equations
Instances For
The number of doubled-quiver arrows from i to j is the corresponding adjacency-matrix
entry.
The number of doubled-quiver arrows leaving a vertex is its degree in the graph.
The number of doubled-quiver arrows entering a vertex is its degree in the graph.
The total number of doubled-quiver arrows is twice the number of graph edges.
A graph homomorphism induces a prefunctor of doubled quivers.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The doubled-quiver prefunctor induced by a graph homomorphism commutes with arrow reversal.
Mapping the identity graph homomorphism gives the identity doubled-quiver prefunctor.
The doubled-quiver map preserves composition of graph homomorphisms.
Mapping the identity graph isomorphism gives the identity doubled-quiver prefunctor.
Mapping a composite graph isomorphism composes the doubled-quiver prefunctors.
Relabelling a graph and then undoing the relabelling is the identity doubled-quiver map.
Undoing a graph relabelling and then applying it is the identity doubled-quiver map.
A graph isomorphism relabels the vertices of the doubled quiver bijectively.