Loogle!
Result
Found 243 declarations mentioning HomologicalComplex.HasHomotopyCofiber. Of these, only the first 200 are shown.
- HomologicalComplex.HasHomotopyCofiber 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) : Prop - HomologicalComplex.instHasHomotopyCofiberOfHasBinaryBiproducts 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [CategoryTheory.Limits.HasBinaryBiproducts C] : HomologicalComplex.HasHomotopyCofiber φ - HomologicalComplex.homotopyCofiber.X 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : C - HomologicalComplex.homotopyCofiber 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] : HomologicalComplex C c - HomologicalComplex.HasHomotopyCofiber.hasBinaryBiproduct 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Preadditive C} {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [self : HomologicalComplex.HasHomotopyCofiber φ] (i j : ι) (hij : c.Rel i j) : CategoryTheory.Limits.HasBinaryBiproduct (F.X j) (G.X i) - HomologicalComplex.HasHomotopyCofiber.mk 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} {φ : F ⟶ G} (hasBinaryBiproduct : ∀ (i j : ι), c.Rel i j → CategoryTheory.Limits.HasBinaryBiproduct (F.X j) (G.X i)) : HomologicalComplex.HasHomotopyCofiber φ - HomologicalComplex.homotopyCofiber.inrX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : G.X i ⟶ HomologicalComplex.homotopyCofiber.X φ i - HomologicalComplex.homotopyCofiber.sndX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : HomologicalComplex.homotopyCofiber.X φ i ⟶ G.X i - HomologicalComplex.homotopyCofiber.d 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) : HomologicalComplex.homotopyCofiber.X φ i ⟶ HomologicalComplex.homotopyCofiber.X φ j - HomologicalComplex.homotopyCofiber_X 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : (HomologicalComplex.homotopyCofiber φ).X i = HomologicalComplex.homotopyCofiber.X φ i - HomologicalComplex.homotopyCofiber.XIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) : HomologicalComplex.homotopyCofiber.X φ i ≅ G.X i - HomologicalComplex.homotopyCofiber.fstX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) : HomologicalComplex.homotopyCofiber.X φ i ⟶ F.X j - HomologicalComplex.homotopyCofiber.inlX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : F.X i ⟶ HomologicalComplex.homotopyCofiber.X φ j - HomologicalComplex.homotopyCofiber.isZero_X 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hG : CategoryTheory.Limits.IsZero (G.X i)) (hF : ∀ (j : ι), c.Rel i j → CategoryTheory.Limits.IsZero (F.X j)) : CategoryTheory.Limits.IsZero (HomologicalComplex.homotopyCofiber.X φ i) - HomologicalComplex.homotopyCofiber.inr 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] : G ⟶ HomologicalComplex.homotopyCofiber φ - HomologicalComplex.homotopyCofiber_d 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) : (HomologicalComplex.homotopyCofiber φ).d i j = HomologicalComplex.homotopyCofiber.d φ i j - HomologicalComplex.homotopyCofiber.inr_f 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : (HomologicalComplex.homotopyCofiber.inr φ).f i = HomologicalComplex.homotopyCofiber.inrX φ i - HomologicalComplex.homotopyCofiber.XIsoBiprod 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) [CategoryTheory.Limits.HasBinaryBiproduct (F.X j) (G.X i)] : HomologicalComplex.homotopyCofiber.X φ i ≅ F.X j ⊞ G.X i - HomologicalComplex.homotopyCofiber.inrX_sndX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (HomologicalComplex.homotopyCofiber.sndX φ i) = CategoryTheory.CategoryStruct.id (G.X i) - HomologicalComplex.homotopyCofiber.inlX_fstX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (HomologicalComplex.homotopyCofiber.fstX φ j i hij) = CategoryTheory.CategoryStruct.id (F.X i) - HomologicalComplex.homotopyCofiber.sndX_inrX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (HomologicalComplex.homotopyCofiber.inrX φ i) = CategoryTheory.CategoryStruct.id (HomologicalComplex.homotopyCofiber.X φ i) - HomologicalComplex.homotopyCofiber.inrX_sndX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) {Z : C} (h : G.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) h) = h - HomologicalComplex.homotopyCofiber.inlX_fstX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : F.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ j i hij) h) = h - HomologicalComplex.homotopyCofiber.sndX_inrX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) h) = h - HomologicalComplex.homotopyCofiber.shape 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : ¬c.Rel i j) : HomologicalComplex.homotopyCofiber.d φ i j = 0 - HomologicalComplex.homotopyCofiber.inrX_d 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (HomologicalComplex.homotopyCofiber.d φ i j) = CategoryTheory.CategoryStruct.comp (G.d i j) (HomologicalComplex.homotopyCofiber.inrX φ j) - HomologicalComplex.homotopyCofiber.ext_from_X' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {A : C} {f g : HomologicalComplex.homotopyCofiber.X φ i ⟶ A} (h : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) f = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) g) : f = g - HomologicalComplex.homotopyCofiber.ext_to_X' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {A : C} {f g : A ⟶ HomologicalComplex.homotopyCofiber.X φ i} (h : CategoryTheory.CategoryStruct.comp f (HomologicalComplex.homotopyCofiber.sndX φ i) = CategoryTheory.CategoryStruct.comp g (HomologicalComplex.homotopyCofiber.sndX φ i)) : f = g - HomologicalComplex.homotopyCofiber.inlX_d' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) (hj : ¬c.Rel j (c.next j)) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (HomologicalComplex.homotopyCofiber.d φ i j) = CategoryTheory.CategoryStruct.comp (φ.f j) (HomologicalComplex.homotopyCofiber.inrX φ j) - HomologicalComplex.homotopyCofiber.inlX_sndX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (HomologicalComplex.homotopyCofiber.sndX φ j) = 0 - HomologicalComplex.homotopyCofiber.inrX_fstX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (HomologicalComplex.homotopyCofiber.fstX φ i j hij) = 0 - HomologicalComplex.homotopyCofiber.mapArrowIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' G' : HomologicalComplex C c} (φ' : F' ⟶ G') [HomologicalComplex.HasHomotopyCofiber φ'] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ≅ CategoryTheory.Arrow.mk φ') : HomologicalComplex.homotopyCofiber φ ≅ HomologicalComplex.homotopyCofiber φ' - HomologicalComplex.homotopyCofiber.inrCompHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (hc : ∀ (j : ι), ∃ i, c.Rel i j) : Homotopy (CategoryTheory.CategoryStruct.comp φ (HomologicalComplex.homotopyCofiber.inr φ)) 0 - HomologicalComplex.homotopyCofiber.mapArrowHom_id 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (H : ∀ (j : ι), ∃ i, c.Rel i j) : HomologicalComplex.homotopyCofiber.mapArrowHom φ φ H (CategoryTheory.CategoryStruct.id (CategoryTheory.Arrow.mk φ)) = CategoryTheory.CategoryStruct.id (HomologicalComplex.homotopyCofiber φ) - HomologicalComplex.homotopyCofiber.inrX_d_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) h) = CategoryTheory.CategoryStruct.comp (G.d i j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) h) - HomologicalComplex.homotopyCofiber.mapArrowHom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' G' : HomologicalComplex C c} (φ' : F' ⟶ G') [HomologicalComplex.HasHomotopyCofiber φ'] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ⟶ CategoryTheory.Arrow.mk φ') : HomologicalComplex.homotopyCofiber φ ⟶ HomologicalComplex.homotopyCofiber φ' - HomologicalComplex.homotopyCofiber.inlX_d'_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) (hj : ¬c.Rel j (c.next j)) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) h) = CategoryTheory.CategoryStruct.comp (φ.f j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) h) - HomologicalComplex.homotopyCofiber.desc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) : HomologicalComplex.homotopyCofiber φ ⟶ K - HomologicalComplex.homotopyCofiber.inr_XIsoBiprod_inv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inr (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).inv = HomologicalComplex.homotopyCofiber.inrX φ j - HomologicalComplex.homotopyCofiber.inl_XIsoBiprod_inv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inl (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).inv = HomologicalComplex.homotopyCofiber.inlX φ i j hij - HomologicalComplex.homotopyCofiber.inlX_sndX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : G.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ j) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.homotopyCofiber.inrX_fstX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) {Z : C} (h : F.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ i j hij) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.homotopyCofiber.inrX_XIsoBiprod_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).hom = CategoryTheory.Limits.biprod.inr - HomologicalComplex.homotopyCofiber.inlX_XIsoBiprod_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).hom = CategoryTheory.Limits.biprod.inl - HomologicalComplex.homotopyCofiber.inrCompHomotopy_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (hc : ∀ (j : ι), ∃ i, c.Rel i j) (i j : ι) (hij : c.Rel j i) : (HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc).hom i j = HomologicalComplex.homotopyCofiber.inlX φ i j hij - HomologicalComplex.homotopyCofiber.ext_from_X 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {A : C} {f g : HomologicalComplex.homotopyCofiber.X φ j ⟶ A} (h₁ : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) f = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) g) (h₂ : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) f = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) g) : f = g - HomologicalComplex.homotopyCofiber.ext_to_X 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) {A : C} {f g : A ⟶ HomologicalComplex.homotopyCofiber.X φ i} (h₁ : CategoryTheory.CategoryStruct.comp f (HomologicalComplex.homotopyCofiber.fstX φ i j hij) = CategoryTheory.CategoryStruct.comp g (HomologicalComplex.homotopyCofiber.fstX φ i j hij)) (h₂ : CategoryTheory.CategoryStruct.comp f (HomologicalComplex.homotopyCofiber.sndX φ i) = CategoryTheory.CategoryStruct.comp g (HomologicalComplex.homotopyCofiber.sndX φ i)) : f = g - HomologicalComplex.homotopyCofiber.descEquiv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (K : HomologicalComplex C c) (hc : ∀ (j : ι), ∃ i, c.Rel i j) : (α : G ⟶ K) × Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0 ≃ (HomologicalComplex.homotopyCofiber φ ⟶ K) - HomologicalComplex.homotopyCofiber.inr_desc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inr φ) (HomologicalComplex.homotopyCofiber.desc φ α hα) = α - HomologicalComplex.homotopyCofiber.inrX_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (i : ι) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) ((HomologicalComplex.homotopyCofiber.desc φ α hα).f i) = α.f i - HomologicalComplex.homotopyCofiber.desc_f' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (j : ι) (hj : ¬c.Rel j (c.next j)) : (HomologicalComplex.homotopyCofiber.desc φ α hα).f j = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ j) (α.f j) - HomologicalComplex.homotopyCofiber.inr_XIsoBiprod_inv_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inr (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).inv h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) h - HomologicalComplex.homotopyCofiber.inl_XIsoBiprod_inv_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inl (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).inv h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) h - HomologicalComplex.homotopyCofiber.inrX_XIsoBiprod_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : F.X i ⊞ G.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).hom h) = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inr h - HomologicalComplex.homotopyCofiber.inlX_XIsoBiprod_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel j i) {Z : C} (h : F.X i ⊞ G.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.XIsoBiprod φ j i hij).hom h) = CategoryTheory.CategoryStruct.comp CategoryTheory.Limits.biprod.inl h - HomologicalComplex.homotopyCofiber.inrX_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (i : ι) {Z : C} (h : K.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homotopyCofiber.desc φ α hα).f i) h) = CategoryTheory.CategoryStruct.comp (α.f i) h - HomologicalComplex.homotopyCofiber.mapArrowIso_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' G' : HomologicalComplex C c} (φ' : F' ⟶ G') [HomologicalComplex.HasHomotopyCofiber φ'] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ≅ CategoryTheory.Arrow.mk φ') : (HomologicalComplex.homotopyCofiber.mapArrowIso φ φ' H α).hom = HomologicalComplex.homotopyCofiber.mapArrowHom φ φ' H α.hom - HomologicalComplex.homotopyCofiber.mapArrowIso_inv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' G' : HomologicalComplex C c} (φ' : F' ⟶ G') [HomologicalComplex.HasHomotopyCofiber φ'] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ≅ CategoryTheory.Arrow.mk φ') : (HomologicalComplex.homotopyCofiber.mapArrowIso φ φ' H α).inv = HomologicalComplex.homotopyCofiber.mapArrowHom φ' φ H α.inv - HomologicalComplex.homotopyCofiber.inrCompHomotopy_hom_eq_zero 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (hc : ∀ (j : ι), ∃ i, c.Rel i j) (i j : ι) (hij : ¬c.Rel j i) : (HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc).hom i j = 0 - HomologicalComplex.homotopyCofiber.d_fstX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j k : ι) (hij : c.Rel i j) (hjk : c.Rel j k) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) (HomologicalComplex.homotopyCofiber.fstX φ j k hjk) = -CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ i j hij) (F.d j k) - HomologicalComplex.homotopyCofiber.inr_desc_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) {Z : HomologicalComplex C c} (h : K ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inr φ) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.desc φ α hα) h) = CategoryTheory.CategoryStruct.comp α h - Homotopy.map_eq_of_inverts_homotopyEquivalences 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} {φ₀ φ₁ : F ⟶ G} (h : Homotopy φ₀ φ₁) (hc : ∀ (j : ι), ∃ i, c.Rel i j) [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] (H : CategoryTheory.Functor (HomologicalComplex C c) D) (hH : (HomologicalComplex.homotopyEquivalences C c).IsInvertedBy H) : H.map φ₀ = H.map φ₁ - HomologicalComplex.homotopyCofiber.d_fstX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j k : ι) (hij : c.Rel i j) (hjk : c.Rel j k) {Z : C} (h : F.X k ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ j k hjk) h) = CategoryTheory.CategoryStruct.comp (-CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ i j hij) (F.d j k)) h - HomologicalComplex.homotopyCofiber.inlX_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (i j : ι) (hjk : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hjk) ((HomologicalComplex.homotopyCofiber.desc φ α hα).f j) = hα.hom i j - HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i : ι) : H.obj ((HomologicalComplex.homotopyCofiber φ).X i) ≅ (HomologicalComplex.homotopyCofiber ((H.mapHomologicalComplex c).map φ)).X i - HomologicalComplex.homotopyCofiber.d_sndX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) (HomologicalComplex.homotopyCofiber.sndX φ j) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ i j hij) (φ.f j) + CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (G.d i j) - HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] : (H.mapHomologicalComplex c).obj (HomologicalComplex.homotopyCofiber φ) ≅ HomologicalComplex.homotopyCofiber ((H.mapHomologicalComplex c).map φ) - HomologicalComplex.homotopyCofiber.inlX_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (i j : ι) (hjk : c.Rel j i) {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ i j hjk) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homotopyCofiber.desc φ α hα).f j) h) = CategoryTheory.CategoryStruct.comp (hα.hom i j) h - HomologicalComplex.homotopyCofiber.d_sndX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) {Z : C} (h : G.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ j) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ i j hij) (φ.f j) + CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (G.d i j)) h - HomologicalComplex.homotopyCofiber.mapArrowHom_comp 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' F'' G' G'' : HomologicalComplex C c} (φ' : F' ⟶ G') (φ'' : F'' ⟶ G'') [HomologicalComplex.HasHomotopyCofiber φ'] [HomologicalComplex.HasHomotopyCofiber φ''] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ⟶ CategoryTheory.Arrow.mk φ') (β : CategoryTheory.Arrow.mk φ' ⟶ CategoryTheory.Arrow.mk φ'') : HomologicalComplex.homotopyCofiber.mapArrowHom φ φ'' H (CategoryTheory.CategoryStruct.comp α β) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapArrowHom φ φ' H α) (HomologicalComplex.homotopyCofiber.mapArrowHom φ' φ'' H β) - HomologicalComplex.homotopyCofiber.inrCompHomotopy_hom_desc_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (hc : ∀ (j : ι), ∃ i, c.Rel i j) (i j : ι) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc).hom i j) ((HomologicalComplex.homotopyCofiber.desc φ α hα).f j) = hα.hom i j - HomologicalComplex.homotopyCofiber.inrCompHomotopy_hom_desc_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (hc : ∀ (j : ι), ∃ i, c.Rel i j) (i j : ι) {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc).hom i j) (CategoryTheory.CategoryStruct.comp ((HomologicalComplex.homotopyCofiber.desc φ α hα).f j) h) = CategoryTheory.CategoryStruct.comp (hα.hom i j) h - HomologicalComplex.homotopyCofiber.inlX_d 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j k : ι) (hij : c.Rel i j) (hjk : c.Rel j k) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (HomologicalComplex.homotopyCofiber.d φ i j) = -CategoryTheory.CategoryStruct.comp (F.d j k) (HomologicalComplex.homotopyCofiber.inlX φ k j hjk) + CategoryTheory.CategoryStruct.comp (φ.f j) (HomologicalComplex.homotopyCofiber.inrX φ j) - HomologicalComplex.homotopyCofiber.mapArrowHom_comp_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {F' F'' G' G'' : HomologicalComplex C c} (φ' : F' ⟶ G') (φ'' : F'' ⟶ G'') [HomologicalComplex.HasHomotopyCofiber φ'] [HomologicalComplex.HasHomotopyCofiber φ''] (H : ∀ (j : ι), ∃ i, c.Rel i j) (α : CategoryTheory.Arrow.mk φ ⟶ CategoryTheory.Arrow.mk φ') (β : CategoryTheory.Arrow.mk φ' ⟶ CategoryTheory.Arrow.mk φ'') {Z : HomologicalComplex C c} (h : HomologicalComplex.homotopyCofiber φ'' ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapArrowHom φ φ'' H (CategoryTheory.CategoryStruct.comp α β)) h = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapArrowHom φ φ' H α) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapArrowHom φ' φ'' H β) h) - HomologicalComplex.homotopyCofiber.inlX_d_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j k : ι) (hij : c.Rel i j) (hjk : c.Rel j k) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) h) = CategoryTheory.CategoryStruct.comp (-CategoryTheory.CategoryStruct.comp (F.d j k) (HomologicalComplex.homotopyCofiber.inlX φ k j hjk) + CategoryTheory.CategoryStruct.comp (φ.f j) (HomologicalComplex.homotopyCofiber.inrX φ j)) h - HomologicalComplex.homotopyCofiber.desc_f 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (j k : ι) (hjk : c.Rel j k) : (HomologicalComplex.homotopyCofiber.desc φ α hα).f j = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.fstX φ j k hjk) (hα.hom k j) + CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ j) (α.f j) - HomologicalComplex.homotopyCofiber.inrX_mapHomologicalComplexObjXIso_inv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i : ι) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX ((H.mapHomologicalComplex c).map φ) i) (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H i).inv = H.map (HomologicalComplex.homotopyCofiber.inrX φ i) - HomologicalComplex.homotopyCofiber.inlX_mapHomologicalComplexObjXIso_inv 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i j : ι) (hij : c.Rel j i) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX ((H.mapHomologicalComplex c).map φ) i j hij) (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H j).inv = H.map (HomologicalComplex.homotopyCofiber.inlX φ i j hij) - HomologicalComplex.homotopyCofiber.map_inrX_mapHomologicalComplexObjXIso_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i : ι) : CategoryTheory.CategoryStruct.comp (H.map (HomologicalComplex.homotopyCofiber.inrX φ i)) (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H i).hom = HomologicalComplex.homotopyCofiber.inrX ((H.mapHomologicalComplex c).map φ) i - HomologicalComplex.homotopyCofiber.inrX_mapHomologicalComplexObjXIso_inv_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i : ι) {Z : D} (h : H.obj ((HomologicalComplex.homotopyCofiber φ).X i) ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX ((H.mapHomologicalComplex c).map φ) i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H i).inv h) = CategoryTheory.CategoryStruct.comp (H.map (HomologicalComplex.homotopyCofiber.inrX φ i)) h - HomologicalComplex.homotopyCofiber.inlX_mapHomologicalComplexObjXIso_inv_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i j : ι) (hij : c.Rel j i) {Z : D} (h : H.obj ((HomologicalComplex.homotopyCofiber φ).X j) ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX ((H.mapHomologicalComplex c).map φ) i j hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H j).inv h) = CategoryTheory.CategoryStruct.comp (H.map (HomologicalComplex.homotopyCofiber.inlX φ i j hij)) h - HomologicalComplex.homotopyCofiber.map_inrX_mapHomologicalComplexObjXIso_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] (i : ι) {Z : D} (h : (HomologicalComplex.homotopyCofiber ((H.mapHomologicalComplex c).map φ)).X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (H.map (HomologicalComplex.homotopyCofiber.inrX φ i)) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjXIso φ H i).hom h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX ((H.mapHomologicalComplex c).map φ) i) h - HomologicalComplex.homotopyCofiber.inr_mapHomologicalComplexObjIso_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.homotopyCofiber.inr φ)) (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjIso φ H).hom = HomologicalComplex.homotopyCofiber.inr ((H.mapHomologicalComplex c).map φ) - HomologicalComplex.homotopyCofiber.eq_desc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (f : HomologicalComplex.homotopyCofiber φ ⟶ K) (hc : ∀ (j : ι), ∃ i, c.Rel i j) : f = HomologicalComplex.homotopyCofiber.desc φ (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inr φ) f) ((Homotopy.ofEq ⋯).trans (((HomologicalComplex.homotopyCofiber.inrCompHomotopy φ hc).compRight f).trans (Homotopy.ofEq ⋯))) - HomologicalComplex.homotopyCofiber.inr_mapHomologicalComplexObjIso_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map φ)] {Z : HomologicalComplex D c} (h : HomologicalComplex.homotopyCofiber ((H.mapHomologicalComplex c).map φ) ⟶ Z) : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.homotopyCofiber.inr φ)) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.mapHomologicalComplexObjIso φ H).hom h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inr ((H.mapHomologicalComplex c).map φ)) h - HomologicalComplex.cylinder.mapHomologicalComplexObjIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} (F : HomologicalComplex C c) [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (((H.mapHomologicalComplex c).obj F).X i) (((H.mapHomologicalComplex c).obj F).X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)) (-CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)))] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F)))] (hc : ∀ (j : ι), ∃ i, c.Rel i j) : (H.mapHomologicalComplex c).obj F.cylinder ≅ ((H.mapHomologicalComplex c).obj F).cylinder - HomologicalComplex.cylinder.map_ι₀_mapHomologicalComplexObjIso_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} (F : HomologicalComplex C c) [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (((H.mapHomologicalComplex c).obj F).X i) (((H.mapHomologicalComplex c).obj F).X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)) (-CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)))] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F)))] (hc : ∀ (j : ι), ∃ i, c.Rel i j) : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.cylinder.ι₀ F)) (HomologicalComplex.cylinder.mapHomologicalComplexObjIso F H hc).hom = HomologicalComplex.cylinder.ι₀ ((H.mapHomologicalComplex c).obj F) - HomologicalComplex.cylinder.map_ι₁_mapHomologicalComplexObjIso_hom 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} (F : HomologicalComplex C c) [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (((H.mapHomologicalComplex c).obj F).X i) (((H.mapHomologicalComplex c).obj F).X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)) (-CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)))] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F)))] (hc : ∀ (j : ι), ∃ i, c.Rel i j) : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.cylinder.ι₁ F)) (HomologicalComplex.cylinder.mapHomologicalComplexObjIso F H hc).hom = HomologicalComplex.cylinder.ι₁ ((H.mapHomologicalComplex c).obj F) - HomologicalComplex.cylinder.map_ι₀_mapHomologicalComplexObjIso_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} (F : HomologicalComplex C c) [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (((H.mapHomologicalComplex c).obj F).X i) (((H.mapHomologicalComplex c).obj F).X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)) (-CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)))] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F)))] (hc : ∀ (j : ι), ∃ i, c.Rel i j) {Z : HomologicalComplex D c} (h : ((H.mapHomologicalComplex c).obj F).cylinder ⟶ Z) : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.cylinder.ι₀ F)) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.cylinder.mapHomologicalComplexObjIso F H hc).hom h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.cylinder.ι₀ ((H.mapHomologicalComplex c).obj F)) h - HomologicalComplex.cylinder.map_ι₁_mapHomologicalComplexObjIso_hom_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} (F : HomologicalComplex C c) [DecidableRel c.Rel] {D : Type u_3} [CategoryTheory.Category.{v_2, u_3} D] [CategoryTheory.Preadditive D] (H : CategoryTheory.Functor C D) [H.Additive] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X i) (F.X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F))] [∀ (i : ι), CategoryTheory.Limits.HasBinaryBiproduct (((H.mapHomologicalComplex c).obj F).X i) (((H.mapHomologicalComplex c).obj F).X i)] [HomologicalComplex.HasHomotopyCofiber (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)) (-CategoryTheory.CategoryStruct.id ((H.mapHomologicalComplex c).obj F)))] [HomologicalComplex.HasHomotopyCofiber ((H.mapHomologicalComplex c).map (CategoryTheory.Limits.biprod.lift (CategoryTheory.CategoryStruct.id F) (-CategoryTheory.CategoryStruct.id F)))] (hc : ∀ (j : ι), ∃ i, c.Rel i j) {Z : HomologicalComplex D c} (h : ((H.mapHomologicalComplex c).obj F).cylinder ⟶ Z) : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex c).map (HomologicalComplex.cylinder.ι₁ F)) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.cylinder.mapHomologicalComplexObjIso F H hc).hom h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.cylinder.ι₁ ((H.mapHomologicalComplex c).obj F)) h - CochainComplex.instHasHomotopyCofiberOfHasBinaryBiproductXHAddOfNat 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_3} [AddRightCancelSemigroup ι] [One ι] {F G : CochainComplex C ι} (φ : F ⟶ G) [∀ (p : ι), CategoryTheory.Limits.HasBinaryBiproduct (F.X (p + 1)) (G.X p)] : HomologicalComplex.HasHomotopyCofiber φ - CochainComplex.mappingCone.fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cocycle (CochainComplex.mappingCone φ) F 1 - CochainComplex.mappingCone.snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCone φ) G 0 - CochainComplex.mappingCone.inl 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cochain F (CochainComplex.mappingCone φ) (-1) - CochainComplex.mappingCone 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex C ℤ - CochainComplex.mappingCone.descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCone φ) K n - CochainComplex.mappingCone.liftCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) : CochainComplex.HomComplex.Cochain K (CochainComplex.mappingCone φ) n - CochainComplex.mappingCone.liftCochain_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) : (CochainComplex.mappingCone.liftCochain φ α β h).comp (CochainComplex.mappingCone.snd φ) ⋯ = β - CochainComplex.mappingCone.inl_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.mappingCone.descCochain φ α β h) ⋯ = α - CochainComplex.mappingCone.inr 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : G ⟶ CochainComplex.mappingCone φ - CochainComplex.mappingCone.inr_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp (CochainComplex.mappingCone.descCochain φ α β h) ⋯ = β - CochainComplex.mappingCone.inr_snd_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e : ℤ} (γ : CochainComplex.HomComplex.Cochain G K d) (he : 0 + d = e) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ((CochainComplex.mappingCone.snd φ).comp γ he) ⋯ = γ - CochainComplex.mappingCone.isZero_X_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i : ℤ) : CategoryTheory.Limits.IsZero ((CochainComplex.mappingCone φ).X i) ↔ CategoryTheory.Limits.IsZero (F.X (i + 1)) ∧ CategoryTheory.Limits.IsZero (G.X i) - CochainComplex.mappingCone.δ_inl 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.δ (-1) 0 (CochainComplex.mappingCone.inl φ) = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ (CochainComplex.mappingCone.inr φ)) - CochainComplex.mappingCone.inr_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp (CochainComplex.mappingCone.snd φ) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id G) - CochainComplex.mappingCone.inl_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.mappingCone.snd φ) ⋯ = 0 - CochainComplex.mappingCone.inl_snd_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e f : ℤ} (γ : CochainComplex.HomComplex.Cochain G K d) (he : 0 + d = e) (hf : -1 + e = f) : (CochainComplex.mappingCone.inl φ).comp ((CochainComplex.mappingCone.snd φ).comp γ he) hf = 0 - CochainComplex.mappingCone.liftCochain_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) {n' m' : ℤ} (α' : CochainComplex.HomComplex.Cochain F L m') (β' : CochainComplex.HomComplex.Cochain G L n') (h : n + 1 = m) (h' : m' + 1 = n') (p : ℤ) (hp : n + n' = p) : (CochainComplex.mappingCone.liftCochain φ α β h).comp (CochainComplex.mappingCone.descCochain φ α' β' h') hp = α.comp α' ⋯ + β.comp β' ⋯ - CochainComplex.mappingCone.ext_cochain_from_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) {K : CochainComplex C ℤ} {γ₁ γ₂ : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCone φ) K j} : γ₁ = γ₂ ↔ (CochainComplex.mappingCone.inl φ).comp γ₁ ⋯ = (CochainComplex.mappingCone.inl φ).comp γ₂ ⋯ ∧ (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp γ₁ ⋯ = (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp γ₂ ⋯ - CochainComplex.mappingCone.descCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : CochainComplex.HomComplex.δ m n α = n.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯) : CochainComplex.HomComplex.Cocycle (CochainComplex.mappingCone φ) K n - CochainComplex.mappingCone.inr_f_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) ((CochainComplex.mappingCone.snd φ).v p p ⋯) = CategoryTheory.CategoryStruct.id (G.X p) - CochainComplex.mappingCone.ofHom_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.desc φ α β eq) = CochainComplex.mappingCone.descCochain φ α (CochainComplex.HomComplex.Cochain.ofHom β) ⋯ - CochainComplex.mappingCone.liftCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (eq : CochainComplex.HomComplex.δ n m β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cocycle K (CochainComplex.mappingCone φ) n - CochainComplex.mappingCone.liftCochain_v_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ : ℤ) (h₁₂ : p₁ + n = p₂) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.liftCochain φ α β h).v p₁ p₂ h₁₂) ((CochainComplex.mappingCone.snd φ).v p₂ p₂ ⋯) = β.v p₁ p₂ h₁₂ - CochainComplex.mappingCone.inl_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.desc φ α β eq)) ⋯ = α - CochainComplex.mappingCone.liftCochain_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) : (CochainComplex.mappingCone.liftCochain φ α β h).comp (↑(CochainComplex.mappingCone.fst φ)) h = α - CochainComplex.mappingCone.inr_f_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p : ℤ) {Z : C} (h : G.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p p ⋯) h) = h - CochainComplex.mappingCone.inr_f_descCochain_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ : ℤ) (h₁₂ : p₁ + n = p₂) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p₁) ((CochainComplex.mappingCone.descCochain φ α β h).v p₁ p₂ h₁₂) = β.v p₁ p₂ h₁₂ - CochainComplex.mappingCone.desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CochainComplex.mappingCone φ ⟶ K - CochainComplex.mappingCone.inl_fst_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e : ℤ} (γ : CochainComplex.HomComplex.Cochain F K d) (he : 1 + d = e) : (CochainComplex.mappingCone.inl φ).comp ((↑(CochainComplex.mappingCone.fst φ)).comp γ he) ⋯ = γ - CochainComplex.mappingCone.inl_v_descCochain_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) (p₁ p₂ p₃ : ℤ) (h₁₂ : p₁ + -1 = p₂) (h₂₃ : p₂ + n = p₃) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p₁ p₂ h₁₂) ((CochainComplex.mappingCone.descCochain φ α β h).v p₂ p₃ h₂₃) = α.v p₁ p₃ ⋯ - CochainComplex.mappingCone.inr_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = 0 - CochainComplex.mappingCone.inl_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.mappingCone.inl φ).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id F) - CochainComplex.mappingCone.inr_fst_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e f : ℤ} (γ : CochainComplex.HomComplex.Cochain F K d) (he : 1 + d = e) (hf : 0 + e = f) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ((↑(CochainComplex.mappingCone.fst φ)).comp γ he) hf = 0 - CochainComplex.mappingCone.inr_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) (CochainComplex.mappingCone.desc φ α β eq) = β - CochainComplex.mappingCone.δ_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.δ 0 1 (CochainComplex.mappingCone.snd φ) = -(↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ - CochainComplex.mappingCone.liftCochain_v_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.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 ((CochainComplex.mappingCone.liftCochain φ α β h).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p₂ p₂ ⋯) h✝) = CategoryTheory.CategoryStruct.comp (β.v p₁ p₂ h₁₂) h✝ - CochainComplex.mappingCone.inr_f_descCochain_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.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 ((CochainComplex.mappingCone.inr φ).f p₁) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.descCochain φ α β h).v p₁ p₂ h₁₂) h✝) = CategoryTheory.CategoryStruct.comp (β.v p₁ p₂ h₁₂) h✝ - CochainComplex.mappingCone.inl_v_descCochain_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.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 ((CochainComplex.mappingCone.inl φ).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.descCochain φ α β h).v p₂ p₃ h₂₃) h✝) = CategoryTheory.CategoryStruct.comp (α.v p₁ p₃ ⋯) h✝ - CochainComplex.mappingCone.δ_liftCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (m' : ℤ) (hm' : m + 1 = m') : CochainComplex.HomComplex.δ n m (CochainComplex.mappingCone.liftCochain φ α β h) = -(CochainComplex.HomComplex.δ m m' α).comp (CochainComplex.mappingCone.inl φ) ⋯ + (CochainComplex.HomComplex.δ n m β + α.comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)) ⋯ - CochainComplex.mappingCone.inr_f_d 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (n₁ n₂ : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f n₁) ((CochainComplex.mappingCone φ).d n₁ n₂) = CategoryTheory.CategoryStruct.comp (G.d n₁ n₂) ((CochainComplex.mappingCone.inr φ).f n₂) - CochainComplex.mappingCone.inl_v_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : p + -1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q hpq) ((CochainComplex.mappingCone.snd φ).v q q ⋯) = 0 - CochainComplex.mappingCone.lift_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq)).comp (CochainComplex.mappingCone.snd φ) ⋯ = β - CochainComplex.mappingCone.lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : K ⟶ CochainComplex.mappingCone φ - CochainComplex.mappingCone.inl_v_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : q + 1 = p) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q ⋯) ((↑(CochainComplex.mappingCone.fst φ)).v q p hpq) = CategoryTheory.CategoryStruct.id (F.X p) - CochainComplex.mappingCone.inl_v_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (h : p + -1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q h) ((CochainComplex.mappingCone.desc φ α β eq).f q) = α.v p q h - CochainComplex.mappingCone.inl_v_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : q + 1 = p) {Z : C} (h : F.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q ⋯) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v q p hpq) h) = h - CochainComplex.mappingCone.inr_f_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) ((CochainComplex.mappingCone.desc φ α β eq).f p) = β.f p - CochainComplex.mappingCone.liftCochain_v_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (p₁ p₂ p₃ : ℤ) (h₁₂ : p₁ + n = p₂) (h₂₃ : p₂ + 1 = p₃) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.liftCochain φ α β h).v p₁ p₂ h₁₂) ((↑(CochainComplex.mappingCone.fst φ)).v p₂ p₃ h₂₃) = α.v p₁ p₃ ⋯ - CochainComplex.mappingCone.descCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : CochainComplex.HomComplex.δ m n α = n.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯) : ↑(CochainComplex.mappingCone.descCocycle φ α β h eq) = CochainComplex.mappingCone.descCochain φ α (↑β) h - CochainComplex.mappingCone.inr_f_d_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (n₁ n₂ : ℤ) {Z : C} (h : (CochainComplex.mappingCone φ).X n₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f n₁) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d n₁ n₂) h) = CategoryTheory.CategoryStruct.comp (G.d n₁ n₂) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f n₂) h) - CochainComplex.mappingCone.liftCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (eq : CochainComplex.HomComplex.δ n m β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : ↑(CochainComplex.mappingCone.liftCocycle φ α β h eq) = CochainComplex.mappingCone.liftCochain φ (↑α) β h - CochainComplex.mappingCone.inl_v_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : p + -1 = q) {Z : C} (h : G.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q hpq) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v q q ⋯) h) = CategoryTheory.CategoryStruct.comp 0 h - CochainComplex.mappingCone.ofHom_lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq) = CochainComplex.mappingCone.liftCochain φ (↑α) β ⋯ - CochainComplex.mappingCone.ext_cochain_to_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) {K : CochainComplex C ℤ} {γ₁ γ₂ : CochainComplex.HomComplex.Cochain K (CochainComplex.mappingCone φ) i} : γ₁ = γ₂ ↔ γ₁.comp (↑(CochainComplex.mappingCone.fst φ)) hij = γ₂.comp (↑(CochainComplex.mappingCone.fst φ)) hij ∧ γ₁.comp (CochainComplex.mappingCone.snd φ) ⋯ = γ₂.comp (CochainComplex.mappingCone.snd φ) ⋯ - CochainComplex.mappingCone.inl_v_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (h : p + -1 = q) {Z : C} (h✝ : K.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q h) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.desc φ α β eq).f q) h✝) = CategoryTheory.CategoryStruct.comp (α.v p q h) h✝ - CochainComplex.mappingCone.δ_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) (n' : ℤ) (hn' : n + 1 = n') : CochainComplex.HomComplex.δ n n' (CochainComplex.mappingCone.descCochain φ α β h) = (↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.HomComplex.δ m n α + n'.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp β ⋯) ⋯ + (CochainComplex.mappingCone.snd φ).comp (CochainComplex.HomComplex.δ n n' β) ⋯ - CochainComplex.mappingCone.inr_f_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p : ℤ) {Z : C} (h : K.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.desc φ α β eq).f p) h) = CategoryTheory.CategoryStruct.comp (β.f p) h - CochainComplex.mappingCone.liftCochain_v_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.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 ((CochainComplex.mappingCone.liftCochain φ α β h).v p₁ p₂ h₁₂) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p₂ p₃ h₂₃) h✝) = CategoryTheory.CategoryStruct.comp (α.v p₁ p₃ ⋯) h✝ - CochainComplex.mappingCone.inr_desc_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) {Z : CochainComplex C ℤ} (h : K ⟶ Z) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.desc φ α β eq) h) = CategoryTheory.CategoryStruct.comp β h - CochainComplex.mappingCone.lift_f_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) ((CochainComplex.mappingCone.snd φ).v p q hpq) = β.v p q hpq - CochainComplex.mappingCone.ext_from 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : j + 1 = i) {A : C} {f g : (CochainComplex.mappingCone φ).X j ⟶ A} (h₁ : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j ⋯) f = CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j ⋯) g) (h₂ : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f j) f = CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f j) g) : f = g - CochainComplex.mappingCone.ext_from_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : j + 1 = i) {A : C} (f g : (CochainComplex.mappingCone φ).X j ⟶ A) : f = g ↔ CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j ⋯) f = CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j ⋯) g ∧ CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f j) f = CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f j) g - CochainComplex.mappingCone.inr_f_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : p + 1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) = 0 - CochainComplex.mappingCone.id 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.mappingCone.inl φ) ⋯ + (CochainComplex.mappingCone.snd φ).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id (CochainComplex.mappingCone φ)) - CochainComplex.mappingCone.lift_f_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 0 = q) {Z : C} (h : G.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p q hpq) h) = CategoryTheory.CategoryStruct.comp (β.v p q hpq) h - CochainComplex.mappingCone.inr_f_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : p + 1 = q) {Z : C} (h : F.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) h) = CategoryTheory.CategoryStruct.comp 0 h - CochainComplex.mappingCone.lift_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq)).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = ↑α - CochainComplex.mappingCone.decomp_to 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {i : ℤ} {A : C} (f : A ⟶ (CochainComplex.mappingCone φ).X i) (j : ℤ) (hij : i + 1 = j) : ∃ a b, f = CategoryTheory.CategoryStruct.comp a ((CochainComplex.mappingCone.inl φ).v j i ⋯) + CategoryTheory.CategoryStruct.comp b ((CochainComplex.mappingCone.inr φ).f i) - CochainComplex.mappingCone.descHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (f₁ f₂ : CochainComplex.mappingCone φ ⟶ K) (γ₁ : CochainComplex.HomComplex.Cochain F K (-2)) (γ₂ : CochainComplex.HomComplex.Cochain G K (-1)) (h₁ : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom f₁) ⋯ = CochainComplex.HomComplex.δ (-2) (-1) γ₁ + (CochainComplex.HomComplex.Cochain.ofHom φ).comp γ₂ ⋯ + (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom f₂) ⋯) (h₂ : CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) f₁) = CochainComplex.HomComplex.δ (-1) 0 γ₂ + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) f₂)) : Homotopy f₁ f₂ - CochainComplex.mappingCone.lift_f_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) = (↑α).v p q hpq - CochainComplex.mappingCone.ext_to 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, 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 ⟶ (CochainComplex.mappingCone φ).X i} (h₁ : CategoryTheory.CategoryStruct.comp f ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) = CategoryTheory.CategoryStruct.comp g ((↑(CochainComplex.mappingCone.fst φ)).v i j hij)) (h₂ : CategoryTheory.CategoryStruct.comp f ((CochainComplex.mappingCone.snd φ).v i i ⋯) = CategoryTheory.CategoryStruct.comp g ((CochainComplex.mappingCone.snd φ).v i i ⋯)) : f = g - CochainComplex.mappingCone.ext_to_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, 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 ⟶ (CochainComplex.mappingCone φ).X i) : f = g ↔ CategoryTheory.CategoryStruct.comp f ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) = CategoryTheory.CategoryStruct.comp g ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) ∧ CategoryTheory.CategoryStruct.comp f ((CochainComplex.mappingCone.snd φ).v i i ⋯) = CategoryTheory.CategoryStruct.comp g ((CochainComplex.mappingCone.snd φ).v i i ⋯) - CochainComplex.mappingCone.decomp_from 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {j : ℤ} {A : C} (f : (CochainComplex.mappingCone φ).X j ⟶ A) (i : ℤ) (hij : j + 1 = i) : ∃ a b, f = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v j i hij) a + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v j j ⋯) b - CochainComplex.mappingCone.lift_f_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) {Z : C} (h : F.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) h) = CategoryTheory.CategoryStruct.comp ((↑α).v p q hpq) h - CochainComplex.mappingCone.liftCochain_v_descCochain_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) {n' m' : ℤ} (α' : CochainComplex.HomComplex.Cochain F L m') (β' : CochainComplex.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 ((CochainComplex.mappingCone.liftCochain φ α β h).v p₁ p₂ h₁₂) ((CochainComplex.mappingCone.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₂₃) - CochainComplex.mappingCone.inl_v_d 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j k : ℤ) (hij : i + -1 = j) (hik : k + -1 = i) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j hij) ((CochainComplex.mappingCone φ).d j i) = CategoryTheory.CategoryStruct.comp (φ.f i) ((CochainComplex.mappingCone.inr φ).f i) - CategoryTheory.CategoryStruct.comp (F.d i k) ((CochainComplex.mappingCone.inl φ).v k i hik) - CochainComplex.mappingCone.liftHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (f₁ f₂ : K ⟶ CochainComplex.mappingCone φ) (α : CochainComplex.HomComplex.Cochain K F 0) (β : CochainComplex.HomComplex.Cochain K G (-1)) (h₁ : (CochainComplex.HomComplex.Cochain.ofHom f₁).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = -CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom f₂).comp ↑(CochainComplex.mappingCone.fst φ) ⋯) (h₂ : (CochainComplex.HomComplex.Cochain.ofHom f₁).comp (CochainComplex.mappingCone.snd φ) ⋯ = CochainComplex.HomComplex.δ (-1) 0 β + α.comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ + (CochainComplex.HomComplex.Cochain.ofHom f₂).comp (CochainComplex.mappingCone.snd φ) ⋯) : Homotopy f₁ f₂ - CochainComplex.mappingCone.inl_v_d_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j k : ℤ) (hij : i + -1 = j) (hik : k + -1 = i) {Z : C} (h : (CochainComplex.mappingCone φ).X i ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v i j hij) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d j i) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp (φ.f i) ((CochainComplex.mappingCone.inr φ).f i) - CategoryTheory.CategoryStruct.comp (F.d i k) ((CochainComplex.mappingCone.inl φ).v k i hik)) h - CochainComplex.mappingCone.d_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, 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 ((CochainComplex.mappingCone φ).d i j) ((↑(CochainComplex.mappingCone.fst φ)).v j k hjk) = -CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) (F.d j k) - CochainComplex.mappingCone.id_X 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (p q : ℤ) (hpq : p + 1 = q) : CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) ((CochainComplex.mappingCone.inl φ).v q p ⋯) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p p ⋯) ((CochainComplex.mappingCone.inr φ).f p) = CategoryTheory.CategoryStruct.id ((CochainComplex.mappingCone φ).X p) - CochainComplex.mappingCone.d_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d i j) ((CochainComplex.mappingCone.snd φ).v j j ⋯) = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) (φ.f j) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v i i ⋯) (G.d i j) - CochainComplex.mappingCone.d_fst_v' 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d (i - 1) i) ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) = -CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v (i - 1) i ⋯) (F.d i j) - CochainComplex.mappingCone.d_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, 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) {Z : C} (h : F.X k ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d i j) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v j k hjk) h) = CategoryTheory.CategoryStruct.comp (-CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) (F.d j k)) h - CochainComplex.mappingCone.desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.mappingCone.desc φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) (α.v q p ⋯) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p p ⋯) (β.f p) - CochainComplex.mappingCone.d_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) {Z : C} (h : G.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d i j) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v j j ⋯) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) (φ.f j) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v i i ⋯) (G.d i j)) h - CochainComplex.mappingCone.d_fst_v'_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) {Z : C} (h : F.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d (i - 1) i) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v i j hij) h) = CategoryTheory.CategoryStruct.comp (-CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v (i - 1) i ⋯) (F.d i j)) h - CochainComplex.mappingCone.lift_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.mappingCone.lift φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑α).v p q hpq) ((CochainComplex.mappingCone.inl φ).v q p ⋯) + CategoryTheory.CategoryStruct.comp (β.v p p ⋯) ((CochainComplex.mappingCone.inr φ).f p) - CochainComplex.mappingCone.mapHomologicalComplexIso 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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 φ)] : (H.mapHomologicalComplex (ComplexShape.up ℤ)).obj (CochainComplex.mappingCone φ) ≅ CochainComplex.mappingCone ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ) - CochainComplex.mappingCone.d_snd_v' 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (n : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d (n - 1) n) ((CochainComplex.mappingCone.snd φ).v n n ⋯) = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v (n - 1) n ⋯) (φ.f n) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v (n - 1) (n - 1) ⋯) (G.d (n - 1) n) - CochainComplex.mappingCone.d_snd_v'_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (n : ℤ) {Z : C} (h : G.X n ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone φ).d (n - 1) n) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v n n ⋯) h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v (n - 1) n ⋯) (φ.f n) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v (n - 1) (n - 1) ⋯) (G.d (n - 1) n)) h - CochainComplex.mappingCone.lift_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (α' : CochainComplex.HomComplex.Cochain F L (-1)) (β' : G ⟶ L) (eq' : CochainComplex.HomComplex.δ (-1) 0 α' = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β')) (n n' : ℤ) (hnn' : n + 1 = n') : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f n) ((CochainComplex.mappingCone.desc φ α' β' eq').f n) = CategoryTheory.CategoryStruct.comp ((↑α).v n n' hnn') (α'.v n' n ⋯) + CategoryTheory.CategoryStruct.comp (β.v n n ⋯) (β'.f n) - CochainComplex.mappingCone.mapHomologicalComplexXIso 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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 (CochainComplex.mappingCone φ)).X n ≅ (CochainComplex.mappingCone ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).X n - CochainComplex.mappingCone.mapHomologicalComplexXIso' 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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 (CochainComplex.mappingCone φ)).X n ≅ (CochainComplex.mappingCone ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).X n - CochainComplex.mappingCone.mapHomologicalComplexXIso_eq 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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) : CochainComplex.mappingCone.mapHomologicalComplexXIso φ H n = CochainComplex.mappingCone.mapHomologicalComplexXIso' φ H n m hnm - CochainComplex.mappingCone.map_inr 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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 φ)] : CategoryTheory.CategoryStruct.comp ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map (CochainComplex.mappingCone.inr φ)) (CochainComplex.mappingCone.mapHomologicalComplexIso φ H).hom = CochainComplex.mappingCone.inr ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ) - CochainComplex.mappingCone.mapHomologicalComplexXIso'_hom 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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) : (CochainComplex.mappingCone.mapHomologicalComplexXIso' φ H n m hnm).hom = CategoryTheory.CategoryStruct.comp (H.map ((↑(CochainComplex.mappingCone.fst φ)).v n m ⋯)) ((CochainComplex.mappingCone.inl ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).v m n ⋯) + CategoryTheory.CategoryStruct.comp (H.map ((CochainComplex.mappingCone.snd φ).v n n ⋯)) ((CochainComplex.mappingCone.inr ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).f n) - CochainComplex.mappingCone.mapHomologicalComplexXIso'_inv 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Category.{v', 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) : (CochainComplex.mappingCone.mapHomologicalComplexXIso' φ H n m hnm).inv = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ))).v n m ⋯) (H.map ((CochainComplex.mappingCone.inl φ).v m n ⋯)) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd ((H.mapHomologicalComplex (ComplexShape.up ℤ)).map φ)).v n n ⋯) (H.map ((CochainComplex.mappingCone.inr φ).f n)) - CochainComplex.mappingCocone.inl 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cochain K (CochainComplex.mappingCocone φ) 0 - CochainComplex.mappingCocone.inr 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cocycle L (CochainComplex.mappingCocone φ) 1 - CochainComplex.mappingCocone.snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCocone φ) L (-1) - CochainComplex.mappingCocone 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex C ℤ - CochainComplex.mappingCocone.descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K M m) (β : CochainComplex.HomComplex.Cochain L M n) (h : m + 1 = n) : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCocone φ) M m - CochainComplex.mappingCocone.liftCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) : CochainComplex.HomComplex.Cochain M (CochainComplex.mappingCocone φ) n - CochainComplex.mappingCocone.inl_comp_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K M m) (β : CochainComplex.HomComplex.Cochain L M n) (h : m + 1 = n) : (CochainComplex.mappingCocone.inl φ).comp (CochainComplex.mappingCocone.descCochain φ α β h) ⋯ = α - CochainComplex.mappingCocone.liftCochain_comp_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) : (CochainComplex.mappingCocone.liftCochain φ α β h).comp (CochainComplex.mappingCocone.snd φ) ⋯ = β - CochainComplex.mappingCocone.fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.mappingCocone φ ⟶ K - CochainComplex.mappingCocone.liftCochain_comp_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) : (CochainComplex.mappingCocone.liftCochain φ α β h).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCocone.fst φ)) ⋯ = α - CochainComplex.mappingCocone.inl_v_fst_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.inl φ).v p p ⋯) ((CochainComplex.mappingCocone.fst φ).f p) = CategoryTheory.CategoryStruct.id (K.X p) - CochainComplex.mappingCocone.liftCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) (hαβ : CochainComplex.HomComplex.δ m n β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cocycle M (CochainComplex.mappingCocone φ) n
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59