Documentation

Mathlib.Algebra.Homology.HomotopyCategory.MappingCone

The mapping cone of a morphism of cochain complexes #

In this file, we study the homotopy cofiber HomologicalComplex.homotopyCofiber of a morphism φ : F ⟶ G of cochain complexes indexed by . In this case, we redefine it as CochainComplex.mappingCone φ. The API involves definitions

The mapping cone of a morphism of cochain complexes indexed by .

Equations
Instances For

    The left inclusion in the mapping cone, as a cochain of degree -1.

    Equations
    Instances For

      The first projection from the mapping cone, as a cocyle of degree 1.

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

        In order to obtain identities of cochains involving inl, inr, fst and snd, it is often convenient to use an ext lemma, and use simp lemmas like inl_v_f_fst_v, but it is sometimes possible to get identities of cochains by using rewrites of identities of cochains like inl_fst. Then, similarly as in category theory, if we associate the compositions of cochains to the right as much as possible, it is also interesting to have reassoc variants of lemmas, like inl_fst_assoc.

        @[simp]
        theorem CochainComplex.mappingCone.inl_fst_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {d e : } (γ : HomComplex.Cochain F K d) (he : 1 + d = e) :
        (inl φ).comp ((↑(fst φ)).comp γ he) = γ
        @[simp]
        theorem CochainComplex.mappingCone.inl_snd_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {d e f : } (γ : HomComplex.Cochain G K d) (he : 0 + d = e) (hf : -1 + e = f) :
        (inl φ).comp ((snd φ).comp γ he) hf = 0
        @[simp]
        theorem CochainComplex.mappingCone.inr_fst_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {d e f : } (γ : HomComplex.Cochain F K d) (he : 1 + d = e) (hf : 0 + e = f) :
        (HomComplex.Cochain.ofHom (inr φ)).comp ((↑(fst φ)).comp γ he) hf = 0
        theorem CochainComplex.mappingCone.ext_to {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ) (hij : i + 1 = j) {A : C} {f g : A (mappingCone φ).X i} (h₁ : CategoryTheory.CategoryStruct.comp f ((↑(fst φ)).v i j hij) = CategoryTheory.CategoryStruct.comp g ((↑(fst φ)).v i j hij)) (h₂ : CategoryTheory.CategoryStruct.comp f ((snd φ).v i i ) = CategoryTheory.CategoryStruct.comp g ((snd φ).v i i )) :
        f = g
        theorem CochainComplex.mappingCone.decomp_to {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {i : } {A : C} (f : A (mappingCone φ).X i) (j : ) (hij : i + 1 = j) :
        ∃ (a : A F.X j) (b : A G.X i), f = CategoryTheory.CategoryStruct.comp a ((inl φ).v j i ) + CategoryTheory.CategoryStruct.comp b ((inr φ).f i)
        theorem CochainComplex.mappingCone.decomp_from {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {j : } {A : C} (f : (mappingCone φ).X j A) (i : ) (hij : j + 1 = i) :
        ∃ (a : F.X i A) (b : G.X j A), f = CategoryTheory.CategoryStruct.comp ((↑(fst φ)).v j i hij) a + CategoryTheory.CategoryStruct.comp ((snd φ).v j j ) b
        theorem CochainComplex.mappingCone.ext_cochain_to_iff {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ) (hij : i + 1 = j) {K : CochainComplex C } {γ₁ γ₂ : HomComplex.Cochain K (mappingCone φ) i} :
        γ₁ = γ₂ γ₁.comp (↑(fst φ)) hij = γ₂.comp (↑(fst φ)) hij γ₁.comp (snd φ) = γ₂.comp (snd φ)
        theorem CochainComplex.mappingCone.ext_cochain_from_iff {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ) (hij : i + 1 = j) {K : CochainComplex C } {γ₁ γ₂ : HomComplex.Cochain (mappingCone φ) K j} :
        γ₁ = γ₂ (inl φ).comp γ₁ = (inl φ).comp γ₂ (HomComplex.Cochain.ofHom (inr φ)).comp γ₁ = (HomComplex.Cochain.ofHom (inr φ)).comp γ₂
        theorem CochainComplex.mappingCone.d_fst_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (i j k : ) (hij : i + 1 = j) (hjk : j + 1 = k) :
        CategoryTheory.CategoryStruct.comp ((mappingCone φ).d i j) ((↑(fst φ)).v j k hjk) = -CategoryTheory.CategoryStruct.comp ((↑(fst φ)).v i j hij) (F.d j k)
        @[simp]
        theorem CochainComplex.mappingCone.d_fst_v' {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ) (hij : i + 1 = j) :
        CategoryTheory.CategoryStruct.comp ((mappingCone φ).d (i - 1) i) ((↑(fst φ)).v i j hij) = -CategoryTheory.CategoryStruct.comp ((↑(fst φ)).v (i - 1) i ) (F.d i j)
        @[simp]

        Given φ : F ⟶ G, this is the cochain in Cochain (mappingCone φ) K n that is constructed from two cochains α : Cochain F K m (with m + 1 = n) and β : Cochain F K n.

        Equations
        Instances For
          @[simp]
          @[simp]
          theorem CochainComplex.mappingCone.inl_v_descCochain_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ p₃ : ) (h₁₂ : p₁ + -1 = p₂) (h₂₃ : p₂ + n = p₃) :
          CategoryTheory.CategoryStruct.comp ((inl φ).v p₁ p₂ h₁₂) ((descCochain φ α β h).v p₂ p₃ h₂₃) = α.v p₁ p₃
          @[simp]
          theorem CochainComplex.mappingCone.inl_v_descCochain_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ p₃ : ) (h₁₂ : p₁ + -1 = p₂) (h₂₃ : p₂ + n = p₃) {Z : C} (h✝ : K.X p₃ Z) :
          CategoryTheory.CategoryStruct.comp ((inl φ).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((descCochain φ α β h).v p₂ p₃ h₂₃) h✝) = CategoryTheory.CategoryStruct.comp (α.v p₁ p₃ ) h✝
          @[simp]
          theorem CochainComplex.mappingCone.inr_f_descCochain_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ : ) (h₁₂ : p₁ + n = p₂) :
          CategoryTheory.CategoryStruct.comp ((inr φ).f p₁) ((descCochain φ α β h).v p₁ p₂ h₁₂) = β.v p₁ p₂ h₁₂
          @[simp]
          theorem CochainComplex.mappingCone.inr_f_descCochain_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ : ) (h₁₂ : p₁ + n = p₂) {Z : C} (h✝ : K.X p₂ Z) :
          CategoryTheory.CategoryStruct.comp ((inr φ).f p₁) (CategoryTheory.CategoryStruct.comp ((descCochain φ α β h).v p₁ p₂ h₁₂) h✝) = CategoryTheory.CategoryStruct.comp (β.v p₁ p₂ h₁₂) h✝
          theorem CochainComplex.mappingCone.δ_descCochain {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cochain G K n) (h : m + 1 = n) (n' : ) (hn' : n + 1 = n') :
          HomComplex.δ n n' (descCochain φ α β h) = (↑(fst φ)).comp (HomComplex.δ m n α + n'.negOnePow (HomComplex.Cochain.ofHom φ).comp β ) + (snd φ).comp (HomComplex.δ n n' β)
          noncomputable def CochainComplex.mappingCone.descCocycle {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : HomComplex.δ m n α = n.negOnePow (HomComplex.Cochain.ofHom φ).comp β ) :

          Given φ : F ⟶ G, this is the cocycle in Cocycle (mappingCone φ) K n that is constructed from α : Cochain F K m (with m + 1 = n) and β : Cocycle F K n, when a suitable cocycle relation is satisfied.

          Equations
          Instances For
            @[simp]
            theorem CochainComplex.mappingCone.descCocycle_coe {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain F K m) (β : HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : HomComplex.δ m n α = n.negOnePow (HomComplex.Cochain.ofHom φ).comp β ) :
            (descCocycle φ α β h eq) = descCochain φ α (↑β) h

            Given φ : F ⟶ G, this is the morphism mappingCone φ ⟶ K that is constructed from a cochain α : Cochain F K (-1) and a morphism β : G ⟶ K such that δ (-1) 0 α = Cochain.ofHom (φ ≫ β).

            Equations
            Instances For
              theorem CochainComplex.mappingCone.desc_f {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cochain F K (-1)) (β : G K) (eq : HomComplex.δ (-1) 0 α = HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ) (hpq : p + 1 = q) :
              (desc φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑(fst φ)).v p q hpq) (α.v q p ) + CategoryTheory.CategoryStruct.comp ((snd φ).v p p ) (β.f p)

              Constructor for homotopies between morphisms from a mapping cone.

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

                Given φ : F ⟶ G, this is the cochain in Cochain (mappingCone φ) K n that is constructed from two cochains α : Cochain F K m (with m + 1 = n) and β : Cochain F K n.

                Equations
                Instances For
                  @[simp]
                  @[simp]
                  @[simp]
                  theorem CochainComplex.mappingCone.liftCochain_v_fst_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ p₃ : ) (h₁₂ : p₁ + n = p₂) (h₂₃ : p₂ + 1 = p₃) :
                  CategoryTheory.CategoryStruct.comp ((liftCochain φ α β h).v p₁ p₂ h₁₂) ((↑(fst φ)).v p₂ p₃ h₂₃) = α.v p₁ p₃
                  @[simp]
                  theorem CochainComplex.mappingCone.liftCochain_v_fst_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ p₃ : ) (h₁₂ : p₁ + n = p₂) (h₂₃ : p₂ + 1 = p₃) {Z : C} (h✝ : F.X p₃ Z) :
                  CategoryTheory.CategoryStruct.comp ((liftCochain φ α β h).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((↑(fst φ)).v p₂ p₃ h₂₃) h✝) = CategoryTheory.CategoryStruct.comp (α.v p₁ p₃ ) h✝
                  @[simp]
                  theorem CochainComplex.mappingCone.liftCochain_v_snd_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ : ) (h₁₂ : p₁ + n = p₂) :
                  CategoryTheory.CategoryStruct.comp ((liftCochain φ α β h).v p₁ p₂ h₁₂) ((snd φ).v p₂ p₂ ) = β.v p₁ p₂ h₁₂
                  @[simp]
                  theorem CochainComplex.mappingCone.liftCochain_v_snd_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ : ) (h₁₂ : p₁ + n = p₂) {Z : C} (h✝ : G.X p₂ Z) :
                  CategoryTheory.CategoryStruct.comp ((liftCochain φ α β h).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((snd φ).v p₂ p₂ ) h✝) = CategoryTheory.CategoryStruct.comp (β.v p₁ p₂ h₁₂) h✝
                  theorem CochainComplex.mappingCone.δ_liftCochain {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (m' : ) (hm' : m + 1 = m') :
                  HomComplex.δ n m (liftCochain φ α β h) = -(HomComplex.δ m m' α).comp (inl φ) + (HomComplex.δ n m β + α.comp (HomComplex.Cochain.ofHom φ) ).comp (HomComplex.Cochain.ofHom (inr φ))

                  Given φ : F ⟶ G, this is the cocycle in Cocycle K (mappingCone φ) n that is constructed from α : Cochain K F m (with n + 1 = m) and β : Cocycle K G n, when a suitable cocycle relation is satisfied.

                  Equations
                  Instances For
                    @[simp]
                    theorem CochainComplex.mappingCone.liftCocycle_coe {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } {n m : } (α : HomComplex.Cocycle K F m) (β : HomComplex.Cochain K G n) (h : n + 1 = m) (eq : HomComplex.δ n m β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) :
                    (liftCocycle φ α β h eq) = liftCochain φ (↑α) β h

                    Given φ : F ⟶ G, this is the morphism K ⟶ mappingCone φ that is constructed from a cocycle α : Cochain K F 1 and a cochain β : Cochain K G 0 when a suitable cocycle relation is satisfied.

                    Equations
                    Instances For
                      @[simp]
                      theorem CochainComplex.mappingCone.lift_f_fst_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (p q : ) (hpq : p + 1 = q) :
                      CategoryTheory.CategoryStruct.comp ((lift φ α β eq).f p) ((↑(fst φ)).v p q hpq) = (↑α).v p q hpq
                      @[simp]
                      theorem CochainComplex.mappingCone.lift_f_fst_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (p q : ) (hpq : p + 1 = q) {Z : C} (h : F.X q Z) :
                      @[simp]
                      theorem CochainComplex.mappingCone.lift_f_snd_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (p q : ) (hpq : p + 0 = q) :
                      CategoryTheory.CategoryStruct.comp ((lift φ α β eq).f p) ((snd φ).v p q hpq) = β.v p q hpq
                      @[simp]
                      theorem CochainComplex.mappingCone.lift_f_snd_v_assoc {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (p q : ) (hpq : p + 0 = q) {Z : C} (h : G.X q Z) :
                      theorem CochainComplex.mappingCone.lift_f {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (p q : ) (hpq : p + 1 = q) :
                      (lift φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑α).v p q hpq) ((inl φ).v q p ) + CategoryTheory.CategoryStruct.comp (β.v p p ) ((inr φ).f p)
                      noncomputable def CochainComplex.mappingCone.liftHomotopy {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C } (f₁ f₂ : K mappingCone φ) (α : HomComplex.Cochain K F 0) (β : HomComplex.Cochain K G (-1)) (h₁ : (HomComplex.Cochain.ofHom f₁).comp (fst φ) = -HomComplex.δ 0 1 α + (HomComplex.Cochain.ofHom f₂).comp (fst φ) ) (h₂ : (HomComplex.Cochain.ofHom f₁).comp (snd φ) = HomComplex.δ (-1) 0 β + α.comp (HomComplex.Cochain.ofHom φ) + (HomComplex.Cochain.ofHom f₂).comp (snd φ) ) :
                      Homotopy f₁ f₂

                      Constructor for homotopies between morphisms to a mapping cone.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        @[simp]
                        theorem CochainComplex.mappingCone.liftCochain_descCochain {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) {n' m' : } (α' : HomComplex.Cochain F L m') (β' : HomComplex.Cochain G L n') (h : n + 1 = m) (h' : m' + 1 = n') (p : ) (hp : n + n' = p) :
                        (liftCochain φ α β h).comp (descCochain φ α' β' h') hp = α.comp α' + β.comp β'
                        theorem CochainComplex.mappingCone.liftCochain_v_descCochain_v {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C } {n m : } (α : HomComplex.Cochain K F m) (β : HomComplex.Cochain K G n) {n' m' : } (α' : HomComplex.Cochain F L m') (β' : HomComplex.Cochain G L n') (h : n + 1 = m) (h' : m' + 1 = n') (p : ) (hp : n + n' = p) (p₁ p₂ p₃ : ) (h₁₂ : p₁ + n = p₂) (h₂₃ : p₂ + n' = p₃) (q : ) (hq : p₁ + m = q) :
                        CategoryTheory.CategoryStruct.comp ((liftCochain φ α β h).v p₁ p₂ h₁₂) ((descCochain φ α' β' h').v p₂ p₃ h₂₃) = CategoryTheory.CategoryStruct.comp (α.v p₁ q hq) (α'.v q p₃ ) + CategoryTheory.CategoryStruct.comp (β.v p₁ p₂ h₁₂) (β'.v p₂ p₃ h₂₃)
                        theorem CochainComplex.mappingCone.lift_desc_f {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C } (α : HomComplex.Cocycle K F 1) (β : HomComplex.Cochain K G 0) (eq : HomComplex.δ 0 1 β + (↑α).comp (HomComplex.Cochain.ofHom φ) = 0) (α' : HomComplex.Cochain F L (-1)) (β' : G L) (eq' : HomComplex.δ (-1) 0 α' = HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β')) (n n' : ) (hnn' : n + 1 = n') :
                        CategoryTheory.CategoryStruct.comp ((lift φ α β eq).f n) ((desc φ α' β' eq').f n) = CategoryTheory.CategoryStruct.comp ((↑α).v n n' hnn') (α'.v n' n ) + CategoryTheory.CategoryStruct.comp (β.v n n ) (β'.f n)
                        noncomputable def CochainComplex.mappingCone.mapHomologicalComplexXIso' {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex (ComplexShape.up )).map φ)] (n m : ) (hnm : n + 1 = m) :
                        ((H.mapHomologicalComplex (ComplexShape.up )).obj (mappingCone φ)).X n (mappingCone ((H.mapHomologicalComplex (ComplexShape.up )).map φ)).X n

                        If H : C ⥤ D is an additive functor and φ is a morphism of cochain complexes in C, this is the comparison isomorphism (in each degree n) between the image by H of mappingCone φ and the mapping cone of the image by H of φ. It is an auxiliary definition for mapHomologicalComplexXIso and mapHomologicalComplexIso. This definition takes an extra parameter m : ℤ such that n + 1 = m which may help getting better definitional properties. See also the equational lemma mapHomologicalComplexXIso_eq.

                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          @[simp]
                          theorem CochainComplex.mappingCone.mapHomologicalComplexXIso'_inv {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex (ComplexShape.up )).map φ)] (n m : ) (hnm : n + 1 = m) :
                          (mapHomologicalComplexXIso' φ H n m hnm).inv = CategoryTheory.CategoryStruct.comp ((↑(fst ((H.mapHomologicalComplex (ComplexShape.up )).map φ))).v n m ) (H.map ((inl φ).v m n )) + CategoryTheory.CategoryStruct.comp ((snd ((H.mapHomologicalComplex (ComplexShape.up )).map φ)).v n n ) (H.map ((inr φ).f n))
                          @[simp]
                          theorem CochainComplex.mappingCone.mapHomologicalComplexXIso'_hom {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex (ComplexShape.up )).map φ)] (n m : ) (hnm : n + 1 = m) :
                          (mapHomologicalComplexXIso' φ H n m hnm).hom = CategoryTheory.CategoryStruct.comp (H.map ((↑(fst φ)).v n m )) ((inl ((H.mapHomologicalComplex (ComplexShape.up )).map φ)).v m n ) + CategoryTheory.CategoryStruct.comp (H.map ((snd φ).v n n )) ((inr ((H.mapHomologicalComplex (ComplexShape.up )).map φ)).f n)
                          noncomputable def CochainComplex.mappingCone.mapHomologicalComplexXIso {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Category.{u_4, u_2} D] [CategoryTheory.Preadditive C] [CategoryTheory.Preadditive D] {F G : CochainComplex C } (φ : F G) [HomologicalComplex.HasHomotopyCofiber φ] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex (ComplexShape.up )).map φ)] (n : ) :
                          ((H.mapHomologicalComplex (ComplexShape.up )).obj (mappingCone φ)).X n (mappingCone ((H.mapHomologicalComplex (ComplexShape.up )).map φ)).X n

                          If H : C ⥤ D is an additive functor and φ is a morphism of cochain complexes in C, this is the comparison isomorphism (in each degree) between the image by H of mappingCone φ and the mapping cone of the image by H of φ.

                          Equations
                          Instances For

                            If H : C ⥤ D is an additive functor and φ is a morphism of cochain complexes in C, this is the comparison isomorphism between the image by H of mappingCone φ and the mapping cone of the image by H of φ.

                            Equations
                            Instances For