Paths in quivers #
Given a quiver V
, we define the type of paths from a : V
to b : V
as an inductive
family. We define composition of paths and the action of prefunctors on paths.
Equations
- Quiver.Path.instInhabited = { default := Quiver.Path.nil }
Quiver.Path.toList
is a contravariant functor. The inversion comes from Quiver.Path
and
List
having different preferred directions for adding elements.
A bounded path is a path with a uniform bound on its length.
Equations
- Quiver.Path.BoundedPaths v w n = { p : Quiver.Path v w // p.length ≤ n }
Instances For
Bounded paths of length zero between two vertices form a subsingleton.
Bounded paths of length zero between two vertices have decidable equality.
Equations
- Quiver.Path.decidableEqBddPathsZero v w x✝¹ x✝ = isTrue ⋯
Instances For
Given decidable equality on paths of length up to n
, we can construct
decidable equality on paths of length up to n + 1
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equality is decidable on all uniformly bounded paths given decidable equality on the vertices and the arrows.
Equations
- One or more equations did not get rendered due to their size.
Equality is decidable on paths in a quiver given decidable equality on the vertices and arrows.
Equations
- Quiver.Path.instDecidableEq v w p q = decidable_of_iff (⟨p, ⋯⟩ = ⟨q, ⋯⟩) ⋯
The image of a path under a prefunctor.
Equations
- F.mapPath Quiver.Path.nil = Quiver.Path.nil
- F.mapPath (p.cons a_1) = (F.mapPath p).cons (F.map a_1)