Documentation

LeanPool.WhiteheadTheorem.HEP.Cofibration

LeanPool.WhiteheadTheorem.HEP.Cofibration #

Imported Lean Pool material for LeanPool.WhiteheadTheorem.HEP.Cofibration.

HasHomotopyExtensionProperty

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    class HasCurriedHEP {A X : TopCat} (i : A X) (Y : TopCat) :

    The map i : A ⟶ X is said to have the "curried HomotopyExtensionProperty" with respect to Y, if the commutative square

      A ---h---> C(I, Y)
      |          |
      i        eval₀
      |          |
      ↓          ↓
      X ---f---> Y
    

    has a lift H : X → C(I, Y).

    Instances
      instance HasCurriedHEP.of_sigma_map {J : Type u} {A B : JTopCat} (f : (j : J) → A j B j) {Z : TopCat} [∀ (j : J), HasCurriedHEP (f j) Z] :

      The cocone has a natural transformation from Functor.ofSequence i to the constant functor at Z. Here we define the first component, NatTrans.app, of this natural transformation. (The second component NatTrans.naturality will be obtained by NatTrans.ofSequence.)

       X n ------- app n -----> Z
        |                       |
       i n                      p
        |                       |
        v                       v
      X (n+1) -----> X ---f---> Y
             ι (n+1)
      

      Each app gives rise to the next commutative square, and is a lift for the previous square.

      Equations
      Instances For
        def CategoryTheory.Limits.Cocone.postcompose {J : Type u_1} {C : Type u_2} [Category.{u_3, u_1} J] [Category.{u_4, u_2} C] {F : Functor J C} (cc : Cocone F) {Y' : C} (p : cc.pt Y') :

        Postcompose a cocone cc with a morphism cc.pt ⟶ Y, giving a cocone whose point is Y. (Does mathlib have this?)

        Equations
        Instances For
          @[reducible, inline]

          coconeDropFirst

          Equations
          Instances For
            @[reducible, inline]

            coconeUndropFirst

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

              Undrop (recover) the first morphism of Limits.colimit.cocone (Functor.ofSequence fun n ↦ i (n + 1))

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                theorem CategoryTheory.IsPushout.hasCurriedHEP {A B X Y Z : TopCat} {f : A B} {i : A X} {j : B Y} {F : X Y} (po : IsPushout f i j F) [lhep : HasCurriedHEP i Z] :

                If

                  A ---f---> B
                  |          |
                  i          j
                  |    p.o.  |
                  v          v
                  X ---F---> Y
                

                is a pushout square and the left side i has the homotopy extension property, then the right side j has the homotopy extension property.

                class IsCofibration {A X : TopCat} (i : A X) :

                IsCofibration

                Instances
                  instance IsCofibration.of_sigma_map {J : Type u} {A B : JTopCat} (f : (j : J) → A j B j) [∀ (j : J), IsCofibration (f j)] :
                  theorem CategoryTheory.IsPushout.isCofibration {A B X Y : TopCat} {f : A B} {i : A X} {j : B Y} {F : X Y} (po : IsPushout f i j F) (cof : IsCofibration i) :
                                    curriedArgSwap
                  C(I, C(I, Y)) --------------------> C(I, C(I, Y))
                       |                  ≃                |
                       |                                   |
                  (exp' I).map (PathSpace.eval₀ Y)    PathSpace.eval₀ (TopCat.of C(I, Y))
                       |                                   |
                       v                                   v
                    C(I, Y)  =========================  C(I, Y)
                  

                  If A ⟶ X is a cofibration, then TopCat.of (A × I) ⟶ TopCat.of (X × I) is a cofibration.

                  A × I --------> C(I, Y)
                    |               |
                  i × id       (PathSpace.eval₀ Y)
                    |               |
                    v               v
                  X × I ----------> Y
                  
                  A  ---f----> C(I, C(I, Y)) ----curriedArgSwap---> C(I, C(I, Y))
                  |               |                                     |
                  i       (exp' I).map (PathSpace.eval₀ Y)      PathSpace.eval₀ (TopCat.of C(I, Y))
                  |               |                                     |
                  v               v                                     v
                  X ----g----> C(I, Y)  ===========================  C(I, Y)
                  

                  related: https://math.stackexchange.com/questions/381527/the-product-of-a-cofibration-with-an-identity-map-is-a-cofibration