Documentation

Mathlib.CategoryTheory.Category.ReflQuiv

The category of refl quivers #

The category ReflQuiv of (bundled) reflexive quivers, and the free/forgetful adjunction between Cat and ReflQuiv.

def CategoryTheory.ReflQuiv :
Type (max (u + 1) u (v + 1))

Category of refl quivers.

Equations
Instances For
    @[implicit_reducible]
    Equations

    The underlying quiver of a reflexive quiver

    Equations
    Instances For

      Construct a bundled ReflQuiv from the underlying type and the typeclass.

      Equations
      Instances For
        @[simp]
        theorem CategoryTheory.ReflQuiv.of_val (C : Type u) [ReflQuiver C] :
        (of C) = C
        @[implicit_reducible]

        Category structure on ReflQuiv

        Equations
        • One or more equations did not get rendered due to their size.
        @[simp]
        @[simp]
        theorem CategoryTheory.ReflQuiv.id_map {X : ReflQuiv} {x y : X} (f : x y) :
        @[simp]
        theorem CategoryTheory.ReflQuiv.comp_obj {X Y Z : ReflQuiv} (f : X Y) (g : Y Z) (x : X) :
        (CategoryStruct.comp f g).obj x = g.obj (f.obj x)
        @[simp]
        theorem CategoryTheory.ReflQuiv.comp_map {X Y Z : ReflQuiv} (f : X Y) (g : Y Z) {x y : X} (a : x y) :
        (CategoryStruct.comp f g).map a = g.map (f.map a)

        The forgetful functor from categories to quivers.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]
          theorem CategoryTheory.ReflQuiv.forget_map {X✝ Y✝ : Cat} (F : X✝ Y✝) :
          theorem CategoryTheory.ReflQuiv.forget_faithful {C D : Cat} (F G : Functor C D) (hyp : forget.map F.toCatHom = forget.map G.toCatHom) :
          F = G

          The forgetful functor from categories to quivers.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            def CategoryTheory.ReflQuiv.isoOfQuivIso {V W : Type u} [ReflQuiver V] [ReflQuiver W] (e : Quiv.of V Quiv.of W) (h_id : ∀ (X : V), e.hom.map (ReflQuiver.id X) = ReflQuiver.id (e.hom.obj X)) :
            of V of W

            An isomorphism of quivers lifts to an isomorphism of reflexive quivers given a suitable compatibility with the identities.

            Equations
            Instances For
              def CategoryTheory.ReflQuiv.isoOfEquiv {V W : Type u} [ReflQuiver V] [ReflQuiver W] (e : V W) (he : (X Y : V) → (X Y) (e X e Y)) (h_id : ∀ (X : V), (he X X) (ReflQuiver.id X) = ReflQuiver.id (e X)) :
              of V of W

              Compatible equivalences of types and hom-types induce an isomorphism of reflexive quivers.

              Equations
              Instances For
                def CategoryTheory.ReflPrefunctor.toFunctor {C D : Cat} (F : ReflQuiv.of C ReflQuiv.of D) (hyp : ∀ {X Y Z : C} (f : X Y) (g : Y Z), F.map (CategoryStruct.comp f g) = CategoryStruct.comp (F.map f) (F.map g)) :
                Functor C D

                A refl prefunctor can be promoted to a functor if it respects composition.

                Equations
                Instances For
                  inductive CategoryTheory.Cat.FreeReflRel (V : Type u_1) [ReflQuiver V] (X Y : Paths V) (f g : X Y) :

                  The hom relation that identifies the specified reflexivity arrows with the nil paths

                  Instances For

                    A reflexive quiver generates a free category, defined as a quotient of the free category on its underlying quiver (called the "path category") by the hom relation that uses the specified reflexivity arrows as the identity arrows.

                    Equations
                    Instances For
                      @[implicit_reducible]
                      Equations
                      • One or more equations did not get rendered due to their size.

                      Constructor for objects in the free category on a reflexive quiver.

                      Equations
                      Instances For
                        def CategoryTheory.Cat.FreeRefl.induction {V : Type u_1} [ReflQuiver V] {motive : FreeRefl VSort u_2} (mk : (v : V) → motive (mk v)) (x : FreeRefl V) :
                        motive x

                        Induction principle for the objects of the free category on a reflexive quiver.

                        Equations
                        Instances For

                          The quotient functor associated to a quotient category defines a natural map from the free category on the underlying quiver of a refl quiver to the free category on the reflexive quiver.

                          Equations
                          Instances For
                            def CategoryTheory.Cat.FreeRefl.homMk {V : Type u_1} [ReflQuiver V] {v w : V} (f : v w) :
                            mk v mk w

                            Constructor for morphisms in FreeRefl.

                            Equations
                            Instances For

                              The property of morphisms in FreeRefl V which are of the form homMk f for some morphism f : x ⟶ y in V.

                              Equations
                              Instances For
                                theorem CategoryTheory.Cat.FreeRefl.hom_induction {V : Type u_1} [ReflQuiver V] {motive : {x y : FreeRefl V} → (x y) → Prop} (id : ∀ (x : V), motive (homMk (ReflQuiver.id x))) (comp_homMk : ∀ {x y z : V} (f : mk x mk y) (g : y z), motive fmotive (CategoryStruct.comp f (homMk g))) {x y : FreeRefl V} (f : x y) :
                                motive f
                                theorem CategoryTheory.Cat.FreeRefl.morphismProperty_eq_top {V : Type u_1} [ReflQuiver V] {W : MorphismProperty (FreeRefl V)} [W.IsMultiplicative] (hW : ∀ {x y : V} (e : x y), W (homMk e)) :
                                W =

                                Constructor for functors from FreeRefl. (See also lift' for which the data is unbundled.)

                                Equations
                                Instances For
                                  @[simp]
                                  theorem CategoryTheory.Cat.FreeRefl.lift_obj {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] (F : V ⥤rq D) (v : V) :
                                  (lift F).obj (mk v) = F.obj v
                                  @[simp]
                                  theorem CategoryTheory.Cat.FreeRefl.lift_map {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] (F : V ⥤rq D) {v w : V} (f : v w) :
                                  (lift F).map (homMk f) = F.map f
                                  def CategoryTheory.Cat.FreeRefl.lift' {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] (obj : VD) (map : {v w : V} → (v w) → (obj v obj w)) (map_id : ∀ (v : V), map (ReflQuiver.id v) = CategoryStruct.id (obj v)) :

                                  Constructor for functors from FreeRefl. (See also lift for which the data is bundled.)

                                  Equations
                                  Instances For
                                    @[simp]
                                    theorem CategoryTheory.Cat.FreeRefl.lift'_obj {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] (obj : VD) (map : {v w : V} → (v w) → (obj v obj w)) (map_id : ∀ (v : V), map (ReflQuiver.id v) = CategoryStruct.id (obj v)) (v : V) :
                                    (lift' obj (fun {v w : V} => map) map_id).obj (mk v) = obj v
                                    @[simp]
                                    theorem CategoryTheory.Cat.FreeRefl.lift'_map {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] (obj : VD) (map : {v w : V} → (v w) → (obj v obj w)) (map_id : ∀ (v : V), map (ReflQuiver.id v) = CategoryStruct.id (obj v)) {v w : V} (f : v w) :
                                    (lift' obj (fun {v w : V} => map) map_id).map (homMk f) = map f
                                    theorem CategoryTheory.Cat.FreeRefl.lift_unique' {V : Type u_2} [ReflQuiver V] {D : Type u_4} [Category.{v_1, u_4} D] (F₁ F₂ : Functor (FreeRefl V) D) (h : (quotientFunctor V).comp F₁ = (quotientFunctor V).comp F₂) :
                                    F₁ = F₂

                                    This is a specialization of Quotient.lift_unique' rather than Quotient.lift_unique, hence the prime in the name.

                                    theorem CategoryTheory.Cat.FreeRefl.functor_ext {V : Type u_1} [ReflQuiver V] {D : Type u_2} [Category.{v_1, u_2} D] {F G : Functor (FreeRefl V) D} (h₁ : ∀ (v : V), F.obj (mk v) = G.obj (mk v)) (h₂ : ∀ {v w : V} (f : v w), F.map (homMk f) = CategoryStruct.comp (eqToHom ) (CategoryStruct.comp (G.map (homMk f)) (eqToHom ))) :
                                    F = G
                                    @[implicit_reducible]
                                    instance CategoryTheory.Cat.FreeRefl.instUniqueHom (V : Type u_2) [ReflQuiver V] [Unique V] [(x y : V) → Unique (x y)] (x y : FreeRefl V) :
                                    Unique (x y)
                                    Equations

                                    Given a refl quiver V, this is the refl functor V ⥤rq FreeRefl V which is the counit of the adjunction between reflexive quivers and categories.

                                    Equations
                                    Instances For
                                      @[simp]
                                      @[simp]
                                      theorem CategoryTheory.Cat.toFreeRefl_map (V : Type u_1) [ReflQuiver V] {X✝ Y✝ : V} (f : X✝ Y✝) :

                                      Constructor for functors from FreeRefl.

                                      def CategoryTheory.Cat.freeReflMap {V : Type u_1} [ReflQuiver V] {W : Type u_2} [ReflQuiver W] (F : V ⥤rq W) :

                                      A refl prefunctor V ⥤rq W induces a functor FreeRefl V ⥤ FreeRefl W defined using freeMap and the quotient functor.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        @[simp]
                                        theorem CategoryTheory.Cat.freeReflMap_obj {V : Type u_1} [ReflQuiver V] {W : Type u_2} [ReflQuiver W] (F : V ⥤rq W) (v : V) :
                                        @[simp]
                                        theorem CategoryTheory.Cat.freeReflMap_map {V : Type u_1} [ReflQuiver V] {W : Type u_2} [ReflQuiver W] (F : V ⥤rq W) {v w : V} (f : v w) :

                                        The functor sending a reflexive quiver to the free category it generates, a quotient of its path category

                                        Equations
                                        • One or more equations did not get rendered due to their size.
                                        Instances For
                                          @[simp]
                                          theorem CategoryTheory.Cat.freeRefl_map {X✝ Y✝ : ReflQuiv} (F : X✝ Y✝) :

                                          We will make use of the natural quotient map from the free category on the underlying quiver of a refl quiver to the free category on the reflexive quiver.

                                          Equations
                                          Instances For

                                            Given a reflexive quiver V and a category C, this is the bijection between functors Cat.FreeRefl V ⥤ C and refl functors V ⥤rq C.

                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For

                                              The adjunction between forming the free category on a reflexive quiver, and forgetting a category to a reflexive quiver.

                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For