Documentation

Mathlib.CategoryTheory.SmallObject.Iteration.UniqueHom

Uniqueness of morphisms in the category of iterations of functors #

Given a functor Φ : C ⥤ C and a natural transformation ε : 𝟭 C ⟶ Φ, we show in this file that there exists a unique morphism between two arbitrary objects in the category Functor.Iteration ε j when j : J and J is a well orderered set.

The (unique) morphism between two objects in Iteration ε ⊥

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTransApp {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)} (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) (k : J) (hk : k ≤ Order.succ i) :
    iter₁.F.obj ⟨k, hk⟩ ⟶ iter₂.F.obj ⟨k, hk⟩

    Auxiliary definition for mkOfSucc.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTransApp_eq_of_le {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)} (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) (k : J) (hk : k ≤ i) :
      CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTransApp hi φ k ⋯ = φ.natTrans.app ⟨k, hk⟩
      @[simp]
      theorem CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTransApp_succ_eq {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)} (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) :
      CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTransApp hi φ (Order.succ i) ⋯ = CategoryTheory.CategoryStruct.comp (iter₁.isoSucc i ⋯).hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.whiskerRight (φ.natTrans.app ⟨i, ⋯⟩) Φ) (iter₂.isoSucc i ⋯).inv)
      noncomputable def CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTrans {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)} (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) :
      iter₁.F ⟶ iter₂.F

      Auxiliary definition for mkOfSucc.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem CategoryTheory.Functor.Iteration.Hom.mkOfSuccNatTrans_app {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)} (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) (x✝ : ↑(Set.Iic (Order.succ i))) :
        noncomputable def CategoryTheory.Functor.Iteration.Hom.mkOfSucc {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {i : J} (iter₁ iter₂ : CategoryTheory.Functor.Iteration ε (Order.succ i)) (hi : ¬IsMax i) (φ : iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) :
        iter₁ ⟶ iter₂

        The (unique) morphism between two objects in Iteration ε (Order.succ i), assuming we have a morphism between the truncations to Iteration ε i.

        Equations
        Instances For
          def CategoryTheory.Functor.Iteration.Hom.mkOfLimitNatTransApp {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {j : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j} (φ : (i : J) → (hi : i < j) → iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) [WellFoundedLT J] (hj : Order.IsSuccLimit j) (i : J) (hi : i ≤ j) :
          iter₁.F.obj ⟨i, hi⟩ ⟶ iter₂.F.obj ⟨i, hi⟩

          Auxiliary definition for mkOfLimit.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            theorem CategoryTheory.Functor.Iteration.Hom.mkOfLimitNatTransApp_eq_of_lt {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {j : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j} (φ : (i : J) → (hi : i < j) → iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) [WellFoundedLT J] (hj : Order.IsSuccLimit j) (i : J) (hi : i < j) :
            CategoryTheory.Functor.Iteration.Hom.mkOfLimitNatTransApp φ hj i ⋯ = (φ i hi).natTrans.app ⟨i, ⋯⟩
            def CategoryTheory.Functor.Iteration.Hom.mkOfLimitNatTrans {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {j : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j} (φ : (i : J) → (hi : i < j) → iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) [WellFoundedLT J] (hj : Order.IsSuccLimit j) :
            iter₁.F ⟶ iter₂.F

            Auxiliary definition for mkOfLimit.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CategoryTheory.Functor.Iteration.Hom.mkOfLimitNatTrans_app {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {j : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j} (φ : (i : J) → (hi : i < j) → iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) [WellFoundedLT J] (hj : Order.IsSuccLimit j) (x✝ : ↑(Set.Iic j)) :
              def CategoryTheory.Functor.Iteration.Hom.mkOfLimit {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] {j : J} {iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j} (φ : (i : J) → (hi : i < j) → iter₁.trunc ⋯ ⟶ iter₂.trunc ⋯) [WellFoundedLT J] (hj : Order.IsSuccLimit j) :
              iter₁ ⟶ iter₂

              The (unique) morphism between two objects in Iteration ε j when j is a limit element, assuming we have a morphism between the truncations to Iteration ε i for all i < j.

              Equations
              Instances For
                Equations
                noncomputable def CategoryTheory.Functor.Iteration.iso {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] [WellFoundedLT J] {j : J} (iter₁ iter₂ : CategoryTheory.Functor.Iteration ε j) :
                iter₁ ≅ iter₂

                The canonical isomorphism between two objects in the category Iteration ε j.

                Equations
                • iter₁.iso iter₂ = { hom := default, inv := default, hom_inv_id := ⋯, inv_hom_id := ⋯ }
                Instances For
                  theorem CategoryTheory.Functor.Iteration.iso_trans {C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] {Φ : CategoryTheory.Functor C C} {ε : CategoryTheory.Functor.id C ⟶ Φ} {J : Type u} [LinearOrder J] [OrderBot J] [SuccOrder J] [WellFoundedLT J] {j : J} (iter₁ iter₂ iter₃ : CategoryTheory.Functor.Iteration ε j) :
                  iter₁.iso iter₂ ≪≫ iter₂.iso iter₃ = iter₁.iso iter₃