Documentation

Mathlib.CategoryTheory.SmallObject.TransfiniteCompositionLifting

The left lifting property is stable under transfinite composition #

Let C be a category, and p : X ⟶ Y be a morphism in C. In this file, we show that a transfinite composition of morphisms that have the left lifting property with respect to p also has the left lifting property with respect to p, see HasLiftingProperty.transfiniteComposition.hasLiftingProperty_ι_app_bot.

About the proof, given a colimit cocone c for a well-order-continuous functor F : J ⥤ C from a well-ordered type J, we introduce a projective system sqFunctor c p f g : Jᵒᵖ ⥤ Type _ which associates to any j : J the structure SqStruct c p f g j which consists of those morphisms f' which makes the diagram below commute. The data of such compatible f' for all j shall give the expected lifting c.pt ⟶ X for the outer square.

         f
F.obj ⊥ --> X
   |      Λ |
   |   f'╱  |
   v    ╱   |
F.obj j     | p
   |        |
   |        |
   v    g   v
  c.pt ---> Y

This is constructed by transfinite induction on j:

TODO: Given P : MorphismProperty C, deduce that the class of morphisms that have the left lifting property with respect to P is stable by transfinite composition.

structure CategoryTheory.HasLiftingProperty.transfiniteComposition.SqStruct {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type w} [LinearOrder J] [OrderBot J] {F : CategoryTheory.Functor J C} (c : CategoryTheory.Limits.Cocone F) {X Y : C} (p : X Y) (f : F.obj X) (g : c.pt Y) (j : J) :

Given a cocone c for a functor F : J ⥤ C from a well-ordered type, and maps p : X ⟶ Y, f : F.obj ⊥ ⟶ X, g : c.pt ⟶ Y, this structure contains the data of a map F.obj j ⟶ X such that F.map (homOfLE bot_le) ≫ f' = f and f' ≫ p = c.ι.app j ≫ g. (This implies that the outer square below commutes, see SqStruct.w.)

         f
F.obj ⊥ --> X
   |      Λ |
   |   f'╱  |
   v    ╱   |
F.obj j     | p
   |        |
   |        |
   v    g   v
  c.pt ---> Y
Instances For
    theorem CategoryTheory.HasLiftingProperty.transfiniteComposition.SqStruct.ext {C : Type u} {inst✝ : CategoryTheory.Category.{v, u} C} {J : Type w} {inst✝¹ : LinearOrder J} {inst✝² : OrderBot J} {F : CategoryTheory.Functor J C} {c : CategoryTheory.Limits.Cocone F} {X Y : C} {p : X Y} {f : F.obj X} {g : c.pt Y} {j : J} {x y : CategoryTheory.HasLiftingProperty.transfiniteComposition.SqStruct c p f g j} (f' : x.f' = y.f') :
    x = y

    Given sq' : SqStruct c p f g j, this is the commutative square

                   sq'.f'
    F.obj j --------------------> X
       |                          |
       |                          |p
       v                      g   v
    F.obj (succ j) ---> c.pt ---> Y
    

    (Using the lifting property for this square is the key ingredient in the proof that the left lifting property with respect to p is stable under transfinite composition.)

    Auxiliary definition for sqFunctor.

    Equations
    Instances For
      @[simp]
      theorem CategoryTheory.HasLiftingProperty.transfiniteComposition.SqStruct.map_f' {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type w} [LinearOrder J] [OrderBot J] {F : CategoryTheory.Functor J C} {c : CategoryTheory.Limits.Cocone F} {X Y : C} {p : X Y} {f : F.obj X} {g : c.pt Y} {j : J} (sq' : CategoryTheory.HasLiftingProperty.transfiniteComposition.SqStruct c p f g j) {j' : J} (α : j' j) :
      (sq'.map α).f' = CategoryTheory.CategoryStruct.comp (F.map α) sq'.f'

      The projective system j ↦ SqStruct c p f g j.unop.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        noncomputable def CategoryTheory.HasLiftingProperty.transfiniteComposition.wellOrderInductionData.liftHom {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type w} [LinearOrder J] [OrderBot J] {F : CategoryTheory.Functor J C} {c : CategoryTheory.Limits.Cocone F} {X Y : C} {p : X Y} {f : F.obj X} {g : c.pt Y} [F.IsWellOrderContinuous] {j : J} (hj : Order.IsSuccLimit j) (s : (.functor.op.comp (CategoryTheory.HasLiftingProperty.transfiniteComposition.sqFunctor c p f g)).sections) :
        F.obj j X

        Auxiliary definition for transfiniteComposition.wellOrderInductionData.

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

          Auxiliary definition for transfiniteComposition.wellOrderInductionData.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            noncomputable def CategoryTheory.HasLiftingProperty.transfiniteComposition.wellOrderInductionData {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type w} [LinearOrder J] [OrderBot J] {F : CategoryTheory.Functor J C} (c : CategoryTheory.Limits.Cocone F) {X Y : C} {p : X Y} (f : F.obj X) (g : c.pt Y) [F.IsWellOrderContinuous] [SuccOrder J] (hF : ∀ (j : J), ¬IsMax jCategoryTheory.HasLiftingProperty (F.map (CategoryTheory.homOfLE )) p) :

            The projective system sqFunctor c p f g has a WellOrderInductionData structure.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              theorem CategoryTheory.HasLiftingProperty.transfiniteComposition.hasLift {C : Type u} [CategoryTheory.Category.{v, u} C] {J : Type w} [LinearOrder J] [OrderBot J] {F : CategoryTheory.Functor J C} {c : CategoryTheory.Limits.Cocone F} (hc : CategoryTheory.Limits.IsColimit c) {X Y : C} {p : X Y} {f : F.obj X} {g : c.pt Y} [F.IsWellOrderContinuous] [SuccOrder J] [WellFoundedLT J] (hF : ∀ (j : J), ¬IsMax jCategoryTheory.HasLiftingProperty (F.map (CategoryTheory.homOfLE )) p) (sq : CategoryTheory.CommSq f (c.app ) p g) :
              sq.HasLift