Free groupoid on a quiver #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
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
:
free_groupoid V
: a type synonym forV
.free_groupoid_groupoid
: thegroupoid
instance onfree_groupoid V
.lift
: the lifting of a prefunctor fromV
toV'
whereV'
is a groupoid, to a functor.free_groupoid 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.
- step : ∀ {V : Type u} [_inst_1 : quiver V] (X Z : quiver.symmetrify V) (f : X ⟶ Z), category_theory.groupoid.free.red_step (𝟙 X) (f.to_path ≫ (quiver.reverse f).to_path)
The "reduction" relation
The underlying vertices of the free groupoid
Equations
The inverse of an arrow in the free groupoid
Equations
- category_theory.groupoid.free.quot_inv f = quot.lift_on f (λ (pp : X.as ⟶ Y.as), quot.mk (category_theory.quotient.comp_closure category_theory.groupoid.free.red_step) (quiver.path.reverse pp)) category_theory.groupoid.free.quot_inv._proof_1
Equations
- category_theory.groupoid.free.category_theory.free_groupoid.category_theory.groupoid = {to_category := {to_category_struct := category_theory.category.to_category_struct category_theory.groupoid.free.category_theory.free_groupoid.category_theory.category, id_comp' := _, comp_id' := _, assoc' := _}, inv := λ (X Y : category_theory.free_groupoid V) (f : X ⟶ Y), category_theory.groupoid.free.quot_inv f, inv_comp' := _, comp_inv' := _}
The inclusion of the quiver on V
to the underlying quiver on free_groupoid V
Equations
- category_theory.groupoid.free.of V = {obj := λ (X : V), {as := X}, map := λ (X Y : V) (f : X ⟶ Y), quot.mk (category_theory.quotient.comp_closure category_theory.groupoid.free.red_step) (category_theory.groupoid.free.quiver.hom.to_pos_path f)}
The lift of a prefunctor to a groupoid, to a functor from free_groupoid V