Covering #
This file defines coverings of quivers as prefunctors that are bijective on the so-called stars and costars at each vertex of the domain.
Main definitions #
Quiver.Star u
is the type of all arrows with sourceu
;Quiver.Costar u
is the type of all arrows with targetu
;Prefunctor.star φ u
is the obvious functionstar u → star (φ.obj u)
;Prefunctor.costar φ u
is the obvious functioncostar u → costar (φ.obj u)
;Prefunctor.IsCovering φ
means thatφ.star u
andφ.costar u
are bijections for allu
;Quiver.PathStar u
is the type of all paths with sourceu
;Prefunctor.pathStar u
is the obvious functionPathStar u → PathStar (φ.obj u)
.
Main statements #
Prefunctor.IsCovering.pathStar_bijective
states that ifφ
is a covering, thenφ.pathStar u
is a bijection for allu
. In other words, every path in the codomain ofφ
lifts uniquely to its domain.
TODO #
Clean up the namespaces by renaming Prefunctor
to Quiver.Prefunctor
.
Tags #
Cover, covering, quiver, path, lift
The Quiver.Star
at a vertex is the collection of arrows whose source is the vertex.
The type Quiver.Star u
is defined to be Σ (v : U), (u ⟶ v)
.
Equations
- Quiver.Star u = ((v : U) × (u ⟶ v))
Instances For
Constructor for Quiver.Star
. Defined to be Sigma.mk
.
Equations
- Quiver.Star.mk f = { fst := v, snd := f }
Instances For
The Quiver.Costar
at a vertex is the collection of arrows whose target is the vertex.
The type Quiver.Costar v
is defined to be Σ (u : U), (u ⟶ v)
.
Equations
- Quiver.Costar v = ((u : U) × (u ⟶ v))
Instances For
Constructor for Quiver.Costar
. Defined to be Sigma.mk
.
Equations
- Quiver.Costar.mk f = { fst := u, snd := f }
Instances For
A prefunctor induces a map of Quiver.Star
at every vertex.
Equations
- Prefunctor.star φ u F = Quiver.Star.mk (φ.map F.snd)
Instances For
A prefunctor induces a map of Quiver.Costar
at every vertex.
Equations
- Prefunctor.costar φ u F = Quiver.Costar.mk (φ.map F.snd)
Instances For
A prefunctor is a covering of quivers if it defines bijections on all stars and costars.
- star_bijective : ∀ (u : U), Function.Bijective (Prefunctor.star φ u)
- costar_bijective : ∀ (u : U), Function.Bijective (Prefunctor.costar φ u)
Instances For
The star of the symmetrification of a quiver at a vertex u
is equivalent to the sum of the
star and the costar at u
in the original quiver.
Equations
- Quiver.symmetrifyStar u = Equiv.sigmaSumDistrib (fun (v : Quiver.Symmetrify U) => Quiver.Symmetrify.of.obj u ⟶ v) fun (v : Quiver.Symmetrify U) => v ⟶ Quiver.Symmetrify.of.obj u
Instances For
The costar of the symmetrification of a quiver at a vertex u
is equivalent to the sum of the
costar and the star at u
in the original quiver.
Equations
- Quiver.symmetrifyCostar u = Equiv.sigmaSumDistrib (fun (u_1 : Quiver.Symmetrify U) => u_1 ⟶ Quiver.Symmetrify.of.obj u) fun (u_1 : Quiver.Symmetrify U) => Quiver.Symmetrify.of.obj u ⟶ u_1
Instances For
The path star at a vertex u
is the type of all paths starting at u
.
The type Quiver.PathStar u
is defined to be Σ v : U, Path u v
.
Equations
- Quiver.PathStar u = ((v : U) × Quiver.Path u v)
Instances For
Constructor for Quiver.PathStar
. Defined to be Sigma.mk
.
Equations
- Quiver.PathStar.mk p = { fst := v, snd := p }
Instances For
A prefunctor induces a map of path stars.
Equations
- Prefunctor.pathStar φ u p = Quiver.PathStar.mk (Prefunctor.mapPath φ p.snd)
Instances For
In a quiver with involutive inverses, the star and costar at every vertex are equivalent.
This map is induced by Quiver.reverse
.
Equations
- One or more equations did not get rendered due to their size.