Directed and zigzag reachability in a quiver #
A vertex b of a quiver is reachable from a (Quiver.Reachable a b) when some directed path
runs from a to b. This is the reflexive transitive closure of the relation "some arrow runs
from x to y", which turns statements about reachability into statements about relations,
where the arrows themselves no longer appear.
Two vertices lie in the same weakly connected component when a zigzag of arrows, each traversed
in either direction, joins them, that is, a path in the symmetrized quiver. Since loops and the
multiplicity of arrows play no role, this is reachability in the simple graph underlying the
quiver (TauCeti.Quiver.underlyingGraph), and the weakly connected components of a quiver are the
connected components of its underlying graph.
Main results #
Quiver.reachable_iff_reflTransGen: directed reachability is the reflexive transitive closure of being joined by an arrow.Quiver.nonempty_path_symmetrify_iff_eqvGen: two vertices are joined by a zigzag of arrows exactly when they are related by the equivalence relation generated by being joined by an arrow.TauCeti.Quiver.nonempty_path_symmetrify_iff_reachable: two vertices are joined by a zigzag of arrows exactly when they are reachable in the underlying graph.TauCeti.Quiver.weaklyConnectedComponentEquiv: the weakly connected components of a quiver are the connected components of its underlying graph.TauCeti.Quiver.ComponentVertex: the vertices in a fixed weakly connected component of an explicit arrow family.TauCeti.Quiver.ComponentHom: the restriction of an explicit arrow family to such a component.
Directed reachability is the reflexive transitive closure of the relation "some arrow runs
from x to y".
Two vertices are joined by a zigzag of arrows, a path in the symmetrized quiver, exactly when
they are related by the equivalence relation generated by the relation "some arrow runs from x
to y". A zigzag is thus a proof-relevant witness of Relation.EqvGen.
Two vertices are joined by a zigzag of arrows, a path in the symmetrized quiver, exactly when they are reachable in the underlying graph.
Two vertices lie in the same weakly connected component exactly when they are reachable in the underlying graph.
The weakly connected components of a quiver are the connected components of its underlying graph.
Instances For
The vertices in a fixed weakly connected component of an explicit arrow family.
Instances For
The restriction of an explicit arrow family to a fixed weakly connected component.
Instances For
A component of a finite vertex type has finitely many vertices.
The endpoints of an arrow lie in the same weakly connected component.
The arrows entering a vertex from within its component are exactly all arrows entering that vertex.
Instances For
The incoming-arrow equivalence retains the vertex and arrow.
The arrows leaving a vertex for vertices within its component are exactly all arrows leaving that vertex.
Instances For
The outgoing-arrow equivalence retains the vertex and arrow.