Documentation

Mathlib.CategoryTheory.Limits.Weighted.HasWeightedLimit

Weighted limits #

In this file, we define weighted limits (in the non enriched case). Given a weight W : J ⥤ Type w and a functor F : J ⥤ C, the W-weighted limit of J is the limit of the functor CategoryOfElements.π W ⋙ F : W.Elements ⥤ C.

References #

@[reducible, inline]
abbrev CategoryTheory.Limits.WeightedCone {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) :
Type (max (max (max u w) u') v')

Given W : J ⥤ Type w and F : J ⥤ C, this is the type of cones for the functor CategoryOfElements.π W ⋙ F : W.Elements ⥤ C.

Equations
Instances For
    @[reducible, inline]

    Given a weight W : J ⥤ Type w and F : J ⥤ C, we say that the W-weighted limit of F exists if the functor CategoryOfElements.π W ⋙ F : W.Elements ⥤ C has a limit.

    Equations
    Instances For
      @[reducible, inline]
      abbrev CategoryTheory.Limits.WeightedCone.π {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (c : WeightedCone W F) {j : J} (x : W.obj j) :
      c.pt ⟶ F.obj j

      The projection c.pt ⟶ F.obj j for c : WeightedCone W F and x : W.obj j.

      Equations
      Instances For
        @[simp]
        theorem CategoryTheory.Limits.WeightedCone.w {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (c : WeightedCone W F) {i j : J} (x : W.obj i) (f : i ⟶ j) :
        @[simp]
        theorem CategoryTheory.Limits.WeightedCone.w_assoc {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (c : WeightedCone W F) {i j : J} (x : W.obj i) (f : i ⟶ j) {Z : C} (h : F.obj j ⟶ Z) :
        def CategoryTheory.Limits.WeightedCone.mk {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (pt : C) (π : ⦃j : J⦄ → W.obj j → (pt ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) :

        Constructor for weighted cones.

        Equations
        Instances For
          @[simp]
          theorem CategoryTheory.Limits.WeightedCone.mk_pt {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (pt : C) (π : ⦃j : J⦄ → W.obj j → (pt ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) :
          (mk pt π hπ).pt = pt
          @[simp]
          theorem CategoryTheory.Limits.WeightedCone.mk_π {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (pt : C) (π : ⦃j : J⦄ → W.obj j → (pt ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) {j : J} (x : W.obj j) :
          (mk pt π hπ).π x = π x
          @[reducible, inline]
          abbrev CategoryTheory.Limits.WeightedCone.IsLimit {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} (c : WeightedCone W F) :
          Type (max (max (max u w) u') v')

          A weighted cone c : WeightedCone W F is a limit if it is so as a cone of CategoryOfElements.π W ⋙ F : W.Elements ⥤ C.

          Equations
          Instances For
            def CategoryTheory.Limits.WeightedCone.IsLimit.lift {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} {c : WeightedCone W F} (hc : c.IsLimit) {Z : C} (π : ⦃j : J⦄ → W.obj j → (Z ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) :
            Z ⟶ c.pt

            Constructor for morphisms from the point of a limit weighted cone.

            Equations
            Instances For
              @[simp]
              theorem CategoryTheory.Limits.WeightedCone.IsLimit.fac {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} {c : WeightedCone W F} (hc : c.IsLimit) {Z : C} (π : ⦃j : J⦄ → W.obj j → (Z ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) {j : J} (x : W.obj j) :
              CategoryStruct.comp (hc.lift π hπ) (c.π x) = π x
              @[simp]
              theorem CategoryTheory.Limits.WeightedCone.IsLimit.fac_assoc {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} {c : WeightedCone W F} (hc : c.IsLimit) {Z : C} (π : ⦃j : J⦄ → W.obj j → (Z ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) {j : J} (x : W.obj j) {Z✝ : C} (h : F.obj j ⟶ Z✝) :
              theorem CategoryTheory.Limits.WeightedCone.IsLimit.hom_ext {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] {W : Functor J (Type w)} {F : Functor J C} {c : WeightedCone W F} (hc : c.IsLimit) {Z : C} {f g : Z ⟶ c.pt} (h : ∀ {j : J} (x : W.obj j), CategoryStruct.comp f (c.π x) = CategoryStruct.comp g (c.π x)) :
              f = g
              @[reducible, inline]

              If the weight is coyoneda.obj (op j) : J ⥤ Type _, this is the limit weighted cone for F : J ⥤ C with point F.obj j.

              Equations
              Instances For

                The weighted limit of F for the weight coyoneda.obj (op j) is F.obj j.

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

                  Given a weight W : J ⥤ Type w and F : J ⥤ C, this is the W-weighted limit of F.

                  Equations
                  Instances For
                    noncomputable def CategoryTheory.Functor.weightedLimObjObjπ {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) [Limits.HasWeightedLimit W F] ⦃j : J⦄ (x : W.obj j) :

                    The projections from the weighted limit.

                    Equations
                    Instances For
                      @[simp]
                      theorem CategoryTheory.Functor.weightedLimObjObj_w {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) [Limits.HasWeightedLimit W F] ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂) :
                      @[simp]
                      theorem CategoryTheory.Functor.weightedLimObjObj_w_assoc {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) [Limits.HasWeightedLimit W F] ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂) {Z : C} (h : F.obj j₂ ⟶ Z) :
                      @[reducible, inline]

                      A choice of limit weighted cone.

                      Equations
                      Instances For
                        @[simp]
                        theorem CategoryTheory.Functor.isLimitWeightedLimCone_fac {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) [Limits.HasWeightedLimit W F] {Z : C} (π : ⦃j : J⦄ → W.obj j → (Z ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) ⦃j : J⦄ (x : W.obj j) :
                        theorem CategoryTheory.Functor.isLimitWeightedLimCone_fac_assoc {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) (F : Functor J C) [Limits.HasWeightedLimit W F] {Z : C} (π : ⦃j : J⦄ → W.obj j → (Z ⟶ F.obj j)) (hπ : ∀ ⦃j₁ j₂ : J⦄ (x : W.obj j₁) (f : j₁ ⟶ j₂), CategoryStruct.comp (π x) (F.map f) = π ((ConcreteCategory.hom (W.map f)) x)) ⦃j : J⦄ (x : W.obj j) {Z✝ : C} (h : F.obj j ⟶ Z✝) :
                        noncomputable def CategoryTheory.Functor.weightedLimObjMap {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) {F₁ F₂ : Functor J C} [Limits.HasWeightedLimit W F₁] [Limits.HasWeightedLimit W F₂] (f : F₁ ⟶ F₂) :

                        Functoriality of the weighted limits with fixed weight W : J ⥤ Type w with respect to the functor in J ⥤ C.

                        Equations
                        Instances For
                          @[simp]
                          theorem CategoryTheory.Functor.weightedLimObjMap_π {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) {F₁ F₂ : Functor J C} [Limits.HasWeightedLimit W F₁] [Limits.HasWeightedLimit W F₂] (f : F₁ ⟶ F₂) ⦃j : J⦄ (x : W.obj j) :
                          @[simp]
                          theorem CategoryTheory.Functor.weightedLimObjMap_π_assoc {J : Type u} [Category.{v, u} J] {C : Type u'} [Category.{v', u'} C] (W : Functor J (Type w)) {F₁ F₂ : Functor J C} [Limits.HasWeightedLimit W F₁] [Limits.HasWeightedLimit W F₂] (f : F₁ ⟶ F₂) ⦃j : J⦄ (x : W.obj j) {Z : C} (h : F₂.obj j ⟶ Z) :

                          The (contravariant) functoriality of weighted limits with respect to the weight.

                          Equations
                          Instances For