Documentation

Mathlib.CategoryTheory.Limits.FunctorCategory.Basic

(Co)limits in functor categories. #

We show that if D has limits, then the functor category C ⥤ D also has limits (CategoryTheory.Limits.functorCategoryHasLimits), and the evaluation functors preserve limits (CategoryTheory.Limits.evaluation_preservesLimits) (and similarly for colimits).

We also show that F : D ⥤ K ⥤ C preserves (co)limits if it does so for each k : K (CategoryTheory.Limits.preservesLimits_of_evaluation and CategoryTheory.Limits.preservesColimits_of_evaluation).

The evaluation functors jointly reflect limits: that is, to show a cone is a limit of F it suffices to show that each evaluation cone is a limit. In other words, to prove a cone is limiting you can show it's pointwise limiting.

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

    Given a functor F and a collection of limit cones for each diagram X ↦ F X k, we can stitch them together to give a cone for the diagram F. combinedIsLimit shows that the new cone is limiting, and evalCombined shows it is (essentially) made up of the original cones.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem CategoryTheory.Limits.combineCones_pt_map {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (F : CategoryTheory.Functor J (CategoryTheory.Functor K C)) (c : (k : K) → CategoryTheory.Limits.LimitCone (F.flip.obj k)) {k₁ k₂ : K} (f : k₁ k₂) :
      (CategoryTheory.Limits.combineCones F c).pt.map f = (c k₂).isLimit.lift { pt := (c k₁).cone.pt, π := CategoryTheory.CategoryStruct.comp (c k₁).cone (F.flip.map f) }

      The stitched together cones each project down to the original given cones (up to iso).

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

        Stitching together limiting cones gives a limiting cone.

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

          The evaluation functors jointly reflect colimits: that is, to show a cocone is a colimit of F it suffices to show that each evaluation cocone is a colimit. In other words, to prove a cocone is colimiting you can show it's pointwise colimiting.

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

            Given a functor F and a collection of colimit cocones for each diagram X ↦ F X k, we can stitch them together to give a cocone for the diagram F. combinedIsColimit shows that the new cocone is colimiting, and evalCombined shows it is (essentially) made up of the original cocones.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CategoryTheory.Limits.combineCocones_pt_map {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type u₁} [CategoryTheory.Category.{v₁, u₁} J] {K : Type u₂} [CategoryTheory.Category.{v₂, u₂} K] (F : CategoryTheory.Functor J (CategoryTheory.Functor K C)) (c : (k : K) → CategoryTheory.Limits.ColimitCocone (F.flip.obj k)) {k₁ k₂ : K} (f : k₁ k₂) :
              (CategoryTheory.Limits.combineCocones F c).pt.map f = (c k₁).isColimit.desc { pt := (c k₂).cocone.pt, ι := CategoryTheory.CategoryStruct.comp (F.flip.map f) (c k₂).cocone }

              The stitched together cocones each project down to the original given cocones (up to iso).

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

                Stitching together colimiting cocones gives a colimiting cocone.

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

                  An alternative colimit cocone in the functor category K ⥤ C in the case where C has J-shaped colimits, with cocone point F.flip ⋙ colim.

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

                    If F : J ⥤ K ⥤ C is a functor into a functor category which has a limit, then the evaluation of that limit at k is the limit of the evaluations of F.obj j at k.

                    Equations
                    Instances For

                      Taking a limit after whiskering by G is the same as using G and then taking a limit.

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

                        If F : J ⥤ K ⥤ C is a functor into a functor category which has a colimit, then the evaluation of that colimit at k is the colimit of the evaluations of F.obj j at k.

                        Equations
                        Instances For

                          Taking a colimit after whiskering by G is the same as using G and then taking a colimit.

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

                            A variant of limitIsoFlipCompLim where the arguments of F are flipped.

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

                              For a functor G : J ⥤ K ⥤ C, its limit K ⥤ C is given by (G' : K ⥤ J ⥤ C) ⋙ lim. Note that this does not require K to be small.

                              Equations
                              Instances For

                                A variant of colimit_iso_flip_comp_colim where the arguments of F are flipped.

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

                                  For a functor G : J ⥤ K ⥤ C, its colimit K ⥤ C is given by (G' : K ⥤ J ⥤ C) ⋙ colim. Note that this does not require K to be small.

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