Free groupoid on a quiver #
This file defines the free groupoid on a quiver, the lifting of a prefunctor to its unique extension as a functor from the free groupoid, and proves uniqueness of this extension.
Main results #
Given the type V
and a quiver instance on V
:
FreeGroupoid V
: a type synonym forV
.FreeGroupoid.instGroupoid
: theGroupoid
instance onFreeGroupoid V
.lift
: the lifting of a prefunctor fromV
toV'
whereV'
is a groupoid, to a functor.FreeGroupoid V ⥤ V'
.lift_spec
andlift_unique
: the proofs that, respectively,lift
indeed is a lifting and is the unique one.
Implementation notes #
The free groupoid is first defined by symmetrifying the quiver, taking the induced path category and finally quotienting by the reducibility relation.
Shorthand for the "forward" arrow corresponding to f
in paths <| symmetrify V
Equations
Instances For
Shorthand for the "forward" arrow corresponding to f
in paths <| symmetrify V
Equations
Instances For
The "reduction" relation
- step: ∀ {V : Type u} [inst : Quiver V] (X Z : Quiver.Symmetrify V) (f : X ⟶ Z), CategoryTheory.Groupoid.Free.redStep (CategoryTheory.CategoryStruct.id (CategoryTheory.Paths.of.obj X)) (CategoryTheory.CategoryStruct.comp (Quiver.Hom.toPath f) (Quiver.Hom.toPath (Quiver.reverse f)))
Instances For
The underlying vertices of the free groupoid
Equations
- CategoryTheory.FreeGroupoid V = CategoryTheory.Quotient CategoryTheory.Groupoid.Free.redStep
Instances For
Equations
- (_ : Nonempty (CategoryTheory.FreeGroupoid V)) = (_ : Nonempty (CategoryTheory.FreeGroupoid V))
Equations
- CategoryTheory.Groupoid.Free.instCategoryFreeGroupoid = CategoryTheory.Quotient.category CategoryTheory.Groupoid.Free.redStep
The inverse of an arrow in the free groupoid
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- CategoryTheory.FreeGroupoid.instGroupoid = CategoryTheory.Groupoid.mk fun {X Y : CategoryTheory.FreeGroupoid V} => CategoryTheory.Groupoid.Free.quotInv
The inclusion of the quiver on V
to the underlying quiver on FreeGroupoid V
Equations
- One or more equations did not get rendered due to their size.
Instances For
The lift of a prefunctor to a groupoid, to a functor from FreeGroupoid V
Equations
- One or more equations did not get rendered due to their size.