Loogle!
Result
Found 551 declarations mentioning HomologicalComplex.d. Of these, only the first 200 are shown.
- HomologicalComplex.d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (self : HomologicalComplex V c) (i j : ι) : self.X i ⟶ self.X j - HomologicalComplex.dNatTrans_app 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} (V : Type u) [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (c : ComplexShape ι) (i j : ι) (X : HomologicalComplex V c) : (HomologicalComplex.dNatTrans V c i j).app X = X.d i j - HomologicalComplex.dFrom_comp_xNextIso 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) : CategoryTheory.CategoryStruct.comp (C.dFrom i) (C.xNextIso r).hom = C.d i j - HomologicalComplex.dFrom_eq 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) : C.dFrom i = CategoryTheory.CategoryStruct.comp (C.d i j) (C.xNextIso r).inv - HomologicalComplex.dTo_eq 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) : C.dTo j = CategoryTheory.CategoryStruct.comp (C.xPrevIso r).hom (C.d i j) - HomologicalComplex.xPrevIso_comp_dTo 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) : CategoryTheory.CategoryStruct.comp (C.xPrevIso r).inv (C.dTo j) = C.d i j - HomologicalComplex.XIsoOfEq_hom_comp_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₁ p₂ : ι} (h : p₁ = p₂) (p₃ : ι) : CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).hom (K.d p₂ p₃) = K.d p₁ p₃ - HomologicalComplex.XIsoOfEq_inv_comp_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₁ : ι} (h : p₂ = p₁) (p₃ : ι) : CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).inv (K.d p₂ p₃) = K.d p₁ p₃ - HomologicalComplex.d_comp_XIsoOfEq_hom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₃ : ι} (h : p₂ = p₃) (p₁ : ι) : CategoryTheory.CategoryStruct.comp (K.d p₁ p₂) (K.XIsoOfEq h).hom = K.d p₁ p₃ - HomologicalComplex.d_comp_XIsoOfEq_inv 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₃ : ι} (h : p₃ = p₂) (p₁ : ι) : CategoryTheory.CategoryStruct.comp (K.d p₁ p₂) (K.XIsoOfEq h).inv = K.d p₁ p₃ - HomologicalComplex.shape 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (self : HomologicalComplex V c) (i j : ι) : ¬c.Rel i j → self.d i j = 0 - HomologicalComplex.d_comp_eqToHom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j j' : ι} (rij : c.Rel i j) (rij' : c.Rel i j') : CategoryTheory.CategoryStruct.comp (C.d i j') (CategoryTheory.eqToHom ⋯) = C.d i j - HomologicalComplex.eqToHom_comp_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i i' j : ι} (rij : c.Rel i j) (rij' : c.Rel i' j) : CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) (C.d i' j) = C.d i j - HomologicalComplex.Hom.comm 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {A B : HomologicalComplex V c} (f : A.Hom B) (i j : ι) : CategoryTheory.CategoryStruct.comp (f.f i) (B.d i j) = CategoryTheory.CategoryStruct.comp (A.d i j) (f.f j) - HomologicalComplex.image_to_eq_image 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) [CategoryTheory.Limits.HasImages V] [CategoryTheory.Limits.HasEqualizers V] {i j : ι} (r : c.Rel i j) : CategoryTheory.Limits.imageSubobject (C.dTo j) = CategoryTheory.Limits.imageSubobject (C.d i j) - HomologicalComplex.kernel_from_eq_kernel 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) [CategoryTheory.Limits.HasKernels V] {i j : ι} (r : c.Rel i j) : CategoryTheory.Limits.kernelSubobject (C.dFrom i) = CategoryTheory.Limits.kernelSubobject (C.d i j) - HomologicalComplex.Hom.comm' 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {A B : HomologicalComplex V c} (self : A.Hom B) (i j : ι) : c.Rel i j → CategoryTheory.CategoryStruct.comp (self.f i) (B.d i j) = CategoryTheory.CategoryStruct.comp (A.d i j) (self.f j) - HomologicalComplex.d_comp_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) (i j k : ι) : CategoryTheory.CategoryStruct.comp (C.d i j) (C.d j k) = 0 - HomologicalComplex.image_eq_image 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) [CategoryTheory.Limits.HasImages V] [CategoryTheory.Limits.HasEqualizers V] {i i' j : ι} (r : c.Rel i j) (r' : c.Rel i' j) : CategoryTheory.Limits.imageSubobject (C.d i j) = CategoryTheory.Limits.imageSubobject (C.d i' j) - HomologicalComplex.kernel_eq_kernel 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) [CategoryTheory.Limits.HasKernels V] {i j j' : ι} (r : c.Rel i j) (r' : c.Rel i j') : CategoryTheory.Limits.kernelSubobject (C.d i j) = CategoryTheory.Limits.kernelSubobject (C.d i j') - HomologicalComplex.Hom.mk 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {A B : HomologicalComplex V c} (f : (i : ι) → A.X i ⟶ B.X i) (comm' : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (f i) (B.d i j) = CategoryTheory.CategoryStruct.comp (A.d i j) (f j) := by cat_disch) : A.Hom B - HomologicalComplex.d_comp_d' 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (self : HomologicalComplex V c) (i j k : ι) : c.Rel i j → c.Rel j k → CategoryTheory.CategoryStruct.comp (self.d i j) (self.d j k) = 0 - HomologicalComplex.dFrom_comp_xNextIso_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) {Z : V} (h : C.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (C.dFrom i) (CategoryTheory.CategoryStruct.comp (C.xNextIso r).hom h) = CategoryTheory.CategoryStruct.comp (C.d i j) h - HomologicalComplex.xPrevIso_comp_dTo_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) {i j : ι} (r : c.Rel i j) {Z : V} (h : C.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (C.xPrevIso r).inv (CategoryTheory.CategoryStruct.comp (C.dTo j) h) = CategoryTheory.CategoryStruct.comp (C.d i j) h - HomologicalComplex.XIsoOfEq_hom_comp_d_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₁ p₂ : ι} (h : p₁ = p₂) (p₃ : ι) {Z : V} (h✝ : K.X p₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).hom (CategoryTheory.CategoryStruct.comp (K.d p₂ p₃) h✝) = CategoryTheory.CategoryStruct.comp (K.d p₁ p₃) h✝ - HomologicalComplex.XIsoOfEq_inv_comp_d_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₁ : ι} (h : p₂ = p₁) (p₃ : ι) {Z : V} (h✝ : K.X p₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).inv (CategoryTheory.CategoryStruct.comp (K.d p₂ p₃) h✝) = CategoryTheory.CategoryStruct.comp (K.d p₁ p₃) h✝ - HomologicalComplex.d_comp_XIsoOfEq_hom_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₃ : ι} (h : p₂ = p₃) (p₁ : ι) {Z : V} (h✝ : K.X p₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.d p₁ p₂) (CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).hom h✝) = CategoryTheory.CategoryStruct.comp (K.d p₁ p₃) h✝ - HomologicalComplex.d_comp_XIsoOfEq_inv_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (K : HomologicalComplex V c) {p₂ p₃ : ι} (h : p₃ = p₂) (p₁ : ι) {Z : V} (h✝ : K.X p₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.d p₁ p₂) (CategoryTheory.CategoryStruct.comp (K.XIsoOfEq h).inv h✝) = CategoryTheory.CategoryStruct.comp (K.d p₁ p₃) h✝ - HomologicalComplex.Hom.comm_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {A B : HomologicalComplex V c} (f : A.Hom B) (i j : ι) {Z : V} (h : B.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (f.f i) (CategoryTheory.CategoryStruct.comp (B.d i j) h) = CategoryTheory.CategoryStruct.comp (A.d i j) (CategoryTheory.CategoryStruct.comp (f.f j) h) - HomologicalComplex.d_comp_d_assoc 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} (C : HomologicalComplex V c) (i j k : ι) {Z : V} (h : C.X k ⟶ Z) : CategoryTheory.CategoryStruct.comp (C.d i j) (CategoryTheory.CategoryStruct.comp (C.d j k) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.Hom.isoOfComponents 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {C₁ C₂ : HomologicalComplex V c} (f : (i : ι) → C₁.X i ≅ C₂.X i) (hf : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (f i).hom (C₂.d i j) = CategoryTheory.CategoryStruct.comp (C₁.d i j) (f j).hom := by cat_disch) : C₁ ≅ C₂ - HomologicalComplex.Hom.isoOfComponents_app 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {C₁ C₂ : HomologicalComplex V c} (f : (i : ι) → C₁.X i ≅ C₂.X i) (hf : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (f i).hom (C₂.d i j) = CategoryTheory.CategoryStruct.comp (C₁.d i j) (f j).hom) (i : ι) : HomologicalComplex.Hom.isoApp (HomologicalComplex.Hom.isoOfComponents f hf) i = f i - HomologicalComplex.ext 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {C₁ C₂ : HomologicalComplex V c} (h_X : C₁.X = C₂.X) (h_d : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (C₁.d i j) (CategoryTheory.eqToHom ⋯) = CategoryTheory.CategoryStruct.comp (CategoryTheory.eqToHom ⋯) (C₂.d i j)) : C₁ = C₂ - ChainComplex.mk'_d_1_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ : V) (d₀ : X₁ ⟶ X₀) (succ' : {X₀ X₁ : V} → (f : X₁ ⟶ X₀) → (X₂ : V) ×' (d : X₂ ⟶ X₁) ×' CategoryTheory.CategoryStruct.comp d f = 0) : (ChainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').d 1 0 = d₀ - CochainComplex.mk'_d_1_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ : V) (d₀ : X₀ ⟶ X₁) (succ' : {X₀ X₁ : V} → (f : X₀ ⟶ X₁) → (X₂ : V) ×' (d : X₁ ⟶ X₂) ×' CategoryTheory.CategoryStruct.comp f d = 0) : (CochainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').d 0 1 = d₀ - HomologicalComplex.Hom.isoOfComponents_hom_f 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {C₁ C₂ : HomologicalComplex V c} (f : (i : ι) → C₁.X i ≅ C₂.X i) (hf : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (f i).hom (C₂.d i j) = CategoryTheory.CategoryStruct.comp (C₁.d i j) (f j).hom := by cat_disch) (i : ι) : (HomologicalComplex.Hom.isoOfComponents f hf).hom.f i = (f i).hom - HomologicalComplex.Hom.isoOfComponents_inv_f 📋 Mathlib.Algebra.Homology.HomologicalComplex
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {c : ComplexShape ι} {C₁ C₂ : HomologicalComplex V c} (f : (i : ι) → C₁.X i ≅ C₂.X i) (hf : ∀ (i j : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (f i).hom (C₂.d i j) = CategoryTheory.CategoryStruct.comp (C₁.d i j) (f j).hom := by cat_disch) (i : ι) : (HomologicalComplex.Hom.isoOfComponents f hf).inv.f i = (f i).inv - ChainComplex.mk_d_1_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₁ ⟶ X₀) (d₁ : X₂ ⟶ X₁) (s : CategoryTheory.CategoryStruct.comp d₁ d₀ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₃ : V) ×' (d₂ : X₃ ⟶ S.X₁) ×' CategoryTheory.CategoryStruct.comp d₂ S.f = 0) : (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d 1 0 = d₀ - ChainComplex.mk_d_2_1 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₁ ⟶ X₀) (d₁ : X₂ ⟶ X₁) (s : CategoryTheory.CategoryStruct.comp d₁ d₀ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₃ : V) ×' (d₂ : X₃ ⟶ S.X₁) ×' CategoryTheory.CategoryStruct.comp d₂ S.f = 0) : (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d 2 1 = d₁ - CochainComplex.mk_d_1_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₀ ⟶ X₁) (d₁ : X₁ ⟶ X₂) (s : CategoryTheory.CategoryStruct.comp d₀ d₁ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₄ : V) ×' (d₂ : S.X₃ ⟶ X₄) ×' CategoryTheory.CategoryStruct.comp S.g d₂ = 0) : (CochainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d 0 1 = d₀ - CochainComplex.mk_d_2_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₀ ⟶ X₁) (d₁ : X₁ ⟶ X₂) (s : CategoryTheory.CategoryStruct.comp d₀ d₁ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₄ : V) ×' (d₂ : S.X₃ ⟶ X₄) ×' CategoryTheory.CategoryStruct.comp S.g d₂ = 0) : (CochainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d 1 2 = d₁ - ChainComplex.ofHom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {α : Type u_2} [AddRightCancelSemigroup α] [One α] {X Y : ChainComplex V α} (f : (i : α) → X.X i ⟶ Y.X i) (comm : ∀ (i : α), CategoryTheory.CategoryStruct.comp (f (i + 1)) (Y.d (i + 1) i) = CategoryTheory.CategoryStruct.comp (X.d (i + 1) i) (f i)) : X ⟶ Y - CochainComplex.ofHom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] {α : Type u_2} [AddRightCancelSemigroup α] [One α] {X Y : CochainComplex V α} (f : (i : α) → X.X i ⟶ Y.X i) (comm : ∀ (i : α), CategoryTheory.CategoryStruct.comp (f i) (Y.d i (i + 1)) = CategoryTheory.CategoryStruct.comp (X.d i (i + 1)) (f (i + 1))) : X ⟶ Y - ChainComplex.mkAux_eq_shortComplex_mk_d_comp_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₁ ⟶ X₀) (d₁ : X₂ ⟶ X₁) (s : CategoryTheory.CategoryStruct.comp d₁ d₀ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₃ : V) ×' (d₂ : X₃ ⟶ S.X₁) ×' CategoryTheory.CategoryStruct.comp d₂ S.f = 0) (n : ℕ) : ChainComplex.mkAux X₀ X₁ X₂ d₀ d₁ s succ n = { X₁ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 2), X₂ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 1), X₃ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X n, f := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 2) (n + 1), g := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 1) n, zero := ⋯ } - ChainComplex.mk'XIso 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ : V) (d₀ : X₁ ⟶ X₀) (succ' : {X₀ X₁ : V} → (f : X₁ ⟶ X₀) → (X₂ : V) ×' (d : X₂ ⟶ X₁) ×' CategoryTheory.CategoryStruct.comp d f = 0) (n : ℕ) : (ChainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').X (n + 2) ≅ (succ' ((ChainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').d (n + 1) n)).fst - ChainComplex.mkXIso 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₁ ⟶ X₀) (d₁ : X₂ ⟶ X₁) (s : CategoryTheory.CategoryStruct.comp d₁ d₀ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₃ : V) ×' (d₂ : X₃ ⟶ S.X₁) ×' CategoryTheory.CategoryStruct.comp d₂ S.f = 0) (n : ℕ) : (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 3) ≅ (succ { X₁ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 2), X₂ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 1), X₃ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X n, f := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 2) (n + 1), g := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 1) n, zero := ⋯ }).fst - ChainComplex.mkHom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : ChainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp one (Q.d 1 0) = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f) → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 2) (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst) : P ⟶ Q - CochainComplex.mkHom 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : CochainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) = CategoryTheory.CategoryStruct.comp (P.d 0 1) one) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f') → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f'') : P ⟶ Q - ChainComplex.mkHom_f_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : ChainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp one (Q.d 1 0) = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f) → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 2) (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst) : (P.mkHom Q zero one one_zero_comm succ).f 0 = zero - ChainComplex.mkHom_f_1 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : ChainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp one (Q.d 1 0) = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f) → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 2) (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst) : (P.mkHom Q zero one one_zero_comm succ).f 1 = one - CochainComplex.mkHom_f_0 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : CochainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) = CategoryTheory.CategoryStruct.comp (P.d 0 1) one) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f') → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f'') : (P.mkHom Q zero one one_zero_comm succ).f 0 = zero - CochainComplex.mkHom_f_1 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : CochainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) = CategoryTheory.CategoryStruct.comp (P.d 0 1) one) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f') → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f'') : (P.mkHom Q zero one one_zero_comm succ).f 1 = one - ChainComplex.mkHomAux 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : ChainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp one (Q.d 1 0) = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f) → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 2) (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst) (n : ℕ) : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f - CochainComplex.mkHomAux 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : CochainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) = CategoryTheory.CategoryStruct.comp (P.d 0 1) one) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f') → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f'') (n : ℕ) : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f' - ChainComplex.mk'_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ : V) (d₀ : X₁ ⟶ X₀) (succ' : {X₀ X₁ : V} → (f : X₁ ⟶ X₀) → (X₂ : V) ×' (d : X₂ ⟶ X₁) ×' CategoryTheory.CategoryStruct.comp d f = 0) (n : ℕ) : (ChainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').d (n + 2) (n + 1) = CategoryTheory.CategoryStruct.comp (ChainComplex.mk'XIso X₀ X₁ d₀ (fun {X₀ X₁} => succ') n).hom (succ' ((ChainComplex.mk' X₀ X₁ d₀ fun {X₀ X₁} => succ').d (n + 1) n)).snd.fst - ChainComplex.mkHom_f_succ_succ 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : ChainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp one (Q.d 1 0) = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f' (Q.d (n + 1) n) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f) → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 2) (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst) (n : ℕ) : (P.mkHom Q zero one one_zero_comm succ).f (n + 2) = (succ n ⟨(P.mkHom Q zero one one_zero_comm succ).f n, ⟨(P.mkHom Q zero one one_zero_comm succ).f (n + 1), ⋯⟩⟩).fst - CochainComplex.mkHom_f_succ_succ 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (P Q : CochainComplex V ℕ) (zero : P.X 0 ⟶ Q.X 0) (one : P.X 1 ⟶ Q.X 1) (one_zero_comm : CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) = CategoryTheory.CategoryStruct.comp (P.d 0 1) one) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X n) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 1)) ×' CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) = CategoryTheory.CategoryStruct.comp (P.d n (n + 1)) f') → (f'' : P.X (n + 2) ⟶ Q.X (n + 2)) ×' CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f'') (n : ℕ) : (P.mkHom Q zero one one_zero_comm succ).f (n + 2) = (succ n ⟨(P.mkHom Q zero one one_zero_comm succ).f n, ⟨(P.mkHom Q zero one one_zero_comm succ).f (n + 1), ⋯⟩⟩).fst - ChainComplex.mk_d 📋 Mathlib.Algebra.Homology.HomologicalComplex
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] (X₀ X₁ X₂ : V) (d₀ : X₁ ⟶ X₀) (d₁ : X₂ ⟶ X₁) (s : CategoryTheory.CategoryStruct.comp d₁ d₀ = 0) (succ : (S : CategoryTheory.ShortComplex V) → (X₃ : V) ×' (d₂ : X₃ ⟶ S.X₁) ×' CategoryTheory.CategoryStruct.comp d₂ S.f = 0) (n : ℕ) : (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 3) (n + 2) = CategoryTheory.CategoryStruct.comp (ChainComplex.mkXIso X₀ X₁ X₂ d₀ d₁ s succ n).hom (succ { X₁ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 2), X₂ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X (n + 1), X₃ := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).X n, f := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 2) (n + 1), g := (ChainComplex.mk X₀ X₁ X₂ d₀ d₁ s succ).d (n + 1) n, zero := ⋯ }).snd.fst - HomologicalComplex.mkHomFromSingle 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {ι : Type u_1} [DecidableEq ι] {c : ComplexShape ι} {K : HomologicalComplex V c} {j : ι} {A : V} (φ : A ⟶ K.X j) (hφ : ∀ (k : ι), c.Rel j k → CategoryTheory.CategoryStruct.comp φ (K.d j k) = 0) : (HomologicalComplex.single V c j).obj A ⟶ K - HomologicalComplex.mkHomToSingle 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {ι : Type u_1} [DecidableEq ι] {c : ComplexShape ι} {K : HomologicalComplex V c} {j : ι} {A : V} (φ : K.X j ⟶ A) (hφ : ∀ (i : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (K.d i j) φ = 0) : K ⟶ (HomologicalComplex.single V c j).obj A - HomologicalComplex.mkHomFromSingle_f 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {ι : Type u_1} [DecidableEq ι] {c : ComplexShape ι} {K : HomologicalComplex V c} {j : ι} {A : V} (φ : A ⟶ K.X j) (hφ : ∀ (k : ι), c.Rel j k → CategoryTheory.CategoryStruct.comp φ (K.d j k) = 0) : (HomologicalComplex.mkHomFromSingle φ hφ).f j = CategoryTheory.CategoryStruct.comp (HomologicalComplex.singleObjXSelf c j A).hom φ - HomologicalComplex.mkHomToSingle_f 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {ι : Type u_1} [DecidableEq ι] {c : ComplexShape ι} {K : HomologicalComplex V c} {j : ι} {A : V} (φ : K.X j ⟶ A) (hφ : ∀ (i : ι), c.Rel i j → CategoryTheory.CategoryStruct.comp (K.d i j) φ = 0) : (HomologicalComplex.mkHomToSingle φ hφ).f j = CategoryTheory.CategoryStruct.comp φ (HomologicalComplex.singleObjXSelf c j A).inv - HomologicalComplex.single_obj_d 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {ι : Type u_1} [DecidableEq ι] (c : ComplexShape ι) (j : ι) (A : V) (k l : ι) : ((HomologicalComplex.single V c j).obj A).d k l = 0 - ChainComplex.toSingle₀Equiv 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] (C : ChainComplex V ℕ) (X : V) : (C ⟶ (ChainComplex.single₀ V).obj X) ≃ { f // CategoryTheory.CategoryStruct.comp (C.d 1 0) f = 0 } - CochainComplex.fromSingle₀Equiv 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] (C : CochainComplex V ℕ) (X : V) : ((CochainComplex.single₀ V).obj X ⟶ C) ≃ { f // CategoryTheory.CategoryStruct.comp f (C.d 0 1) = 0 } - ChainComplex.toSingle₀Equiv_apply_coe 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] (C : ChainComplex V ℕ) (X : V) (φ : C ⟶ (ChainComplex.single₀ V).obj X) : ↑((C.toSingle₀Equiv X) φ) = φ.f 0 - CochainComplex.fromSingle₀Equiv_apply_coe 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] (C : CochainComplex V ℕ) (X : V) (φ : (CochainComplex.single₀ V).obj X ⟶ C) : ↑((C.fromSingle₀Equiv X) φ) = φ.f 0 - ChainComplex.toSingle₀Equiv_symm_apply_f_zero 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {C : ChainComplex V ℕ} {X : V} (f : C.X 0 ⟶ X) (hf : CategoryTheory.CategoryStruct.comp (C.d 1 0) f = 0) : ((C.toSingle₀Equiv X).symm ⟨f, hf⟩).f 0 = f - CochainComplex.fromSingle₀Equiv_symm_apply_f_zero 📋 Mathlib.Algebra.Homology.Single
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Limits.HasZeroMorphisms V] [CategoryTheory.Limits.HasZeroObject V] {C : CochainComplex V ℕ} {X : V} (f : X ⟶ C.X 0) (hf : CategoryTheory.CategoryStruct.comp f (C.d 0 1) = 0) : ((C.fromSingle₀Equiv X).symm ⟨f, hf⟩).f 0 = f - CategoryTheory.Functor.mapHomologicalComplex_obj_d 📋 Mathlib.Algebra.Homology.Additive
{ι : Type u_1} {W₁ : Type u_3} {W₂ : Type u_4} [CategoryTheory.Category.{v_2, u_3} W₁] [CategoryTheory.Category.{v_3, u_4} W₂] [CategoryTheory.Limits.HasZeroMorphisms W₁] [CategoryTheory.Limits.HasZeroMorphisms W₂] (F : CategoryTheory.Functor W₁ W₂) [F.PreservesZeroMorphisms] (c : ComplexShape ι) (C : HomologicalComplex W₁ c) (i j : ι) : ((F.mapHomologicalComplex c).obj C).d i j = F.map (C.d i j) - CategoryTheory.Functor.mapHomologicalComplex_map_f 📋 Mathlib.Algebra.Homology.Additive
{ι : Type u_1} {W₁ : Type u_3} {W₂ : Type u_4} [CategoryTheory.Category.{v_2, u_3} W₁] [CategoryTheory.Category.{v_3, u_4} W₂] [CategoryTheory.Limits.HasZeroMorphisms W₁] [CategoryTheory.Limits.HasZeroMorphisms W₂] (F : CategoryTheory.Functor W₁ W₂) [F.PreservesZeroMorphisms] (c : ComplexShape ι) {X✝ Y✝ : HomologicalComplex W₁ c} (f : X✝ ⟶ Y✝) (i : ι) : ((F.mapHomologicalComplex c).map f).f i = F.map (f.f i) - HomologicalComplex.coconeOfHasColimitEval_pt_d 📋 Mathlib.Algebra.Homology.HomologicalComplexLimits
{C : Type u_1} {ι : Type u_2} {J : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_3} J] {c : ComplexShape ι} [CategoryTheory.Limits.HasZeroMorphisms C] (F : CategoryTheory.Functor J (HomologicalComplex C c)) [∀ (n : ι), CategoryTheory.Limits.HasColimit (F.comp (HomologicalComplex.eval C c n))] (n m : ι) : (HomologicalComplex.coconeOfHasColimitEval F).pt.d n m = CategoryTheory.Limits.colimMap { app := fun j => (F.obj j).d n m, naturality := ⋯ } - HomologicalComplex.coneOfHasLimitEval_pt_d 📋 Mathlib.Algebra.Homology.HomologicalComplexLimits
{C : Type u_1} {ι : Type u_2} {J : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_3} J] {c : ComplexShape ι} [CategoryTheory.Limits.HasZeroMorphisms C] (F : CategoryTheory.Functor J (HomologicalComplex C c)) [∀ (n : ι), CategoryTheory.Limits.HasLimit (F.comp (HomologicalComplex.eval C c n))] (n m : ι) : (HomologicalComplex.coneOfHasLimitEval F).pt.d n m = CategoryTheory.Limits.limMap { app := fun j => (F.obj j).d n m, naturality := ⋯ } - HomologicalComplex.coconeOfHasColimitEval_ι_app_f 📋 Mathlib.Algebra.Homology.HomologicalComplexLimits
{C : Type u_1} {ι : Type u_2} {J : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_3} J] {c : ComplexShape ι} [CategoryTheory.Limits.HasZeroMorphisms C] (F : CategoryTheory.Functor J (HomologicalComplex C c)) [∀ (n : ι), CategoryTheory.Limits.HasColimit (F.comp (HomologicalComplex.eval C c n))] (j : J) (n : ι) : ((HomologicalComplex.coconeOfHasColimitEval F).ι.app j).f n = CategoryTheory.Limits.colimit.ι (F.comp (HomologicalComplex.eval C c n)) j - HomologicalComplex.coneOfHasLimitEval_π_app_f 📋 Mathlib.Algebra.Homology.HomologicalComplexLimits
{C : Type u_1} {ι : Type u_2} {J : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_3} J] {c : ComplexShape ι} [CategoryTheory.Limits.HasZeroMorphisms C] (F : CategoryTheory.Functor J (HomologicalComplex C c)) [∀ (n : ι), CategoryTheory.Limits.HasLimit (F.comp (HomologicalComplex.eval C c n))] (j : J) (x✝ : ι) : ((HomologicalComplex.coneOfHasLimitEval F).π.app j).f x✝ = CategoryTheory.Limits.limit.π (F.comp (HomologicalComplex.eval C c x✝)) j - HomologicalComplex.shortComplexFunctor'_obj_f 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c) : ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).f = K.d i j - HomologicalComplex.shortComplexFunctor'_obj_g 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c) : ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).g = K.d j k - HomologicalComplex.shortComplexFunctor_obj_f 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c) : ((HomologicalComplex.shortComplexFunctor C c i).obj K).f = K.d (c.prev i) i - HomologicalComplex.shortComplexFunctor_obj_g 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c) : ((HomologicalComplex.shortComplexFunctor C c i).obj K).g = K.d i (c.next i) - HomologicalComplex.p_fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.pOpcycles i) (K.fromOpcycles i j) = K.d i j - HomologicalComplex.toCycles_i 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.toCycles i j) (K.iCycles j) = K.d i j - HomologicalComplex.iCyclesIso 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : K.cycles i ≅ K.X i - HomologicalComplex.pOpcyclesIso 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : K.X j ≅ K.opcycles j - HomologicalComplex.isoHomologyι 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : K.homology i ≅ K.opcycles i - HomologicalComplex.isoHomologyπ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : K.cycles j ≅ K.homology j - HomologicalComplex.p_fromOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.pOpcycles i) (CategoryTheory.CategoryStruct.comp (K.fromOpcycles i j) h) = CategoryTheory.CategoryStruct.comp (K.d i j) h - HomologicalComplex.toCycles_i_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j] {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.toCycles i j) (CategoryTheory.CategoryStruct.comp (K.iCycles j) h) = CategoryTheory.CategoryStruct.comp (K.d i j) h - HomologicalComplex.descOpcycles' 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.Rel j i) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) : K.opcycles i ⟶ A - HomologicalComplex.liftCycles' 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.Rel i j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) : A ⟶ K.cycles i - HomologicalComplex.descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) : K.opcycles i ⟶ A - HomologicalComplex.isIso_iCycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.IsIso (K.iCycles i) - HomologicalComplex.isIso_pOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.IsIso (K.pOpcycles j) - HomologicalComplex.liftCycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) : A ⟶ K.cycles i - HomologicalComplex.isIso_homologyι 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.IsIso (K.homologyι i) - HomologicalComplex.isIso_homologyπ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.IsIso (K.homologyπ j) - HomologicalComplex.d_pOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.d i j) (K.pOpcycles j) = 0 - HomologicalComplex.iCycles_d 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.iCycles i) (K.d i j) = 0 - HomologicalComplex.d_toCycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology k] : CategoryTheory.CategoryStruct.comp (K.d i j) (K.toCycles j k) = 0 - HomologicalComplex.fromOpcycles_d 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.fromOpcycles i j) (K.d j k) = 0 - HomologicalComplex.cyclesIsKernel 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] (hj : c.next i = j) : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι (K.iCycles i) ⋯) - HomologicalComplex.opcyclesIsCokernel 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] (hi : c.prev j = i) [K.HasHomology j] : CategoryTheory.Limits.IsColimit (CategoryTheory.Limits.CokernelCofork.ofπ (K.pOpcycles j) ⋯) - HomologicalComplex.iCyclesIso_hom 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : (K.iCyclesIso i j hj h).hom = K.iCycles i - HomologicalComplex.pOpcyclesIso_hom 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : (K.pOpcyclesIso i j hi h).hom = K.pOpcycles j - HomologicalComplex.isoHomologyι_hom 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : (K.isoHomologyι i j hj h).hom = K.homologyι i - HomologicalComplex.isoHomologyπ_hom 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : (K.isoHomologyπ i j hi h).hom = K.homologyπ j - HomologicalComplex.liftCycles_i 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj hk) (K.iCycles i) = k - HomologicalComplex.p_descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) : CategoryTheory.CategoryStruct.comp (K.pOpcycles i) (K.descOpcycles k j hj hk) = k - HomologicalComplex.d_pOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j] {Z : C} (h : K.opcycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.d i j) (CategoryTheory.CategoryStruct.comp (K.pOpcycles j) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.iCycles_d_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.iCycles i) (CategoryTheory.CategoryStruct.comp (K.d i j) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.d_toCycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology k] {Z : C} (h : K.cycles k ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.d i j) (CategoryTheory.CategoryStruct.comp (K.toCycles j k) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.fromOpcycles_d_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology i] {Z : C} (h : K.X k ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.fromOpcycles i j) (CategoryTheory.CategoryStruct.comp (K.d j k) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.shortComplexFunctor'_map_τ₁ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₁ = f.f i - HomologicalComplex.shortComplexFunctor'_map_τ₂ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₂ = f.f j - HomologicalComplex.shortComplexFunctor'_map_τ₃ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₃ = f.f k - HomologicalComplex.iCyclesIso_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.iCyclesIso i j hj h).inv (K.iCycles i) = CategoryTheory.CategoryStruct.id (K.X i) - HomologicalComplex.pOpcyclesIso_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.pOpcycles j) (K.pOpcyclesIso i j hi h).inv = CategoryTheory.CategoryStruct.id (K.X j) - HomologicalComplex.homologyι_descOpcycles_eq_zero_of_boundary 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) {i' : ι} (x : K.X i' ⟶ A) (hx : k = CategoryTheory.CategoryStruct.comp (K.d i i') x) : CategoryTheory.CategoryStruct.comp (K.homologyι i) (K.descOpcycles k j hj ⋯) = 0 - HomologicalComplex.liftCycles_homologyπ_eq_zero_of_boundary 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) {i' : ι} (x : A ⟶ K.X i') (hx : k = CategoryTheory.CategoryStruct.comp x (K.d i' i)) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj ⋯) (K.homologyπ i) = 0 - HomologicalComplex.iCyclesIso_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.iCycles i) (K.iCyclesIso i j hj h).inv = CategoryTheory.CategoryStruct.id (K.cycles i) - HomologicalComplex.pOpcyclesIso_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.pOpcyclesIso i j hi h).inv (K.pOpcycles j) = CategoryTheory.CategoryStruct.id (K.opcycles j) - HomologicalComplex.comp_liftCycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A' A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) (α : A' ⟶ A) : CategoryTheory.CategoryStruct.comp α (K.liftCycles k j hj hk) = K.liftCycles (CategoryTheory.CategoryStruct.comp α k) j hj ⋯ - HomologicalComplex.descOpcycles_comp 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A A' : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) (α : A ⟶ A') : CategoryTheory.CategoryStruct.comp (K.descOpcycles k j hj hk) α = K.descOpcycles (CategoryTheory.CategoryStruct.comp k α) j hj ⋯ - HomologicalComplex.isoHomologyι_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.homologyι i) (K.isoHomologyι i j hj h).inv = CategoryTheory.CategoryStruct.id (K.homology i) - HomologicalComplex.isoHomologyι_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] : CategoryTheory.CategoryStruct.comp (K.isoHomologyι i j hj h).inv (K.homologyι i) = CategoryTheory.CategoryStruct.id (K.opcycles i) - HomologicalComplex.isoHomologyπ_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.homologyπ j) (K.isoHomologyπ i j hi h).inv = CategoryTheory.CategoryStruct.id (K.cycles j) - HomologicalComplex.isoHomologyπ_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] : CategoryTheory.CategoryStruct.comp (K.isoHomologyπ i j hi h).inv (K.homologyπ j) = CategoryTheory.CategoryStruct.id (K.homology j) - HomologicalComplex.liftCycles_i_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) {Z : C} (h : K.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj hk) (CategoryTheory.CategoryStruct.comp (K.iCycles i) h) = CategoryTheory.CategoryStruct.comp k h - HomologicalComplex.p_descOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.pOpcycles i) (CategoryTheory.CategoryStruct.comp (K.descOpcycles k j hj hk) h) = CategoryTheory.CategoryStruct.comp k h - HomologicalComplex.iCyclesIso_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] {Z : C} (h✝ : K.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.iCyclesIso i j hj h).inv (CategoryTheory.CategoryStruct.comp (K.iCycles i) h✝) = h✝ - HomologicalComplex.pOpcyclesIso_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] {Z : C} (h✝ : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.pOpcycles j) (CategoryTheory.CategoryStruct.comp (K.pOpcyclesIso i j hi h).inv h✝) = h✝ - HomologicalComplex.iCyclesIso_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] {Z : C} (h✝ : K.cycles i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.iCycles i) (CategoryTheory.CategoryStruct.comp (K.iCyclesIso i j hj h).inv h✝) = h✝ - HomologicalComplex.pOpcyclesIso_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] {Z : C} (h✝ : K.opcycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.pOpcyclesIso i j hi h).inv (CategoryTheory.CategoryStruct.comp (K.pOpcycles j) h✝) = h✝ - HomologicalComplex.isoHomologyι_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] {Z : C} (h✝ : K.homology i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyι i) (CategoryTheory.CategoryStruct.comp (K.isoHomologyι i j hj h).inv h✝) = h✝ - HomologicalComplex.isoHomologyι_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hj : c.next i = j) (h : K.d i j = 0) [K.HasHomology i] {Z : C} (h✝ : K.opcycles i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.isoHomologyι i j hj h).inv (CategoryTheory.CategoryStruct.comp (K.homologyι i) h✝) = h✝ - HomologicalComplex.isoHomologyπ_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] {Z : C} (h✝ : K.cycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyπ j) (CategoryTheory.CategoryStruct.comp (K.isoHomologyπ i j hi h).inv h✝) = h✝ - HomologicalComplex.isoHomologyπ_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) (hi : c.prev j = i) (h : K.d i j = 0) [K.HasHomology j] {Z : C} (h✝ : K.homology j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.isoHomologyπ i j hi h).inv (CategoryTheory.CategoryStruct.comp (K.homologyπ j) h✝) = h✝ - HomologicalComplex.shortComplexFunctor_map_τ₂ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₂ = f.f i - HomologicalComplex.shortComplexFunctor_map_τ₁ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₁ = f.f (c.prev i) - HomologicalComplex.shortComplexFunctor_map_τ₃ 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) {X✝ Y✝ : HomologicalComplex C c} (f : X✝ ⟶ Y✝) : ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₃ = f.f (c.next i) - HomologicalComplex.comp_liftCycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A' A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) (α : A' ⟶ A) {Z : C} (h : K.cycles i ⟶ Z) : CategoryTheory.CategoryStruct.comp α (CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj hk) h) = CategoryTheory.CategoryStruct.comp (K.liftCycles (CategoryTheory.CategoryStruct.comp α k) j hj ⋯) h - HomologicalComplex.descOpcycles_comp_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A A' : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) (α : A ⟶ A') {Z : C} (h : A' ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.descOpcycles k j hj hk) (CategoryTheory.CategoryStruct.comp α h) = CategoryTheory.CategoryStruct.comp (K.descOpcycles (CategoryTheory.CategoryStruct.comp k α) j hj ⋯) h - HomologicalComplex.homologyι_descOpcycles_eq_zero_of_boundary_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) {i' : ι} (x : K.X i' ⟶ A) (hx : k = CategoryTheory.CategoryStruct.comp (K.d i i') x) {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyι i) (CategoryTheory.CategoryStruct.comp (K.descOpcycles k j hj ⋯) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.liftCycles_homologyπ_eq_zero_of_boundary_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) {i' : ι} (x : A ⟶ K.X i') (hx : k = CategoryTheory.CategoryStruct.comp x (K.d i' i)) {Z : C} (h : K.homology i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj ⋯) (CategoryTheory.CategoryStruct.comp (K.homologyπ i) h) = CategoryTheory.CategoryStruct.comp 0 h - HomologicalComplex.liftCycles_comp_cyclesMap 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} {i : ι} [K.HasHomology i] [L.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) (φ : K ⟶ L) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj hk) (HomologicalComplex.cyclesMap φ i) = L.liftCycles (CategoryTheory.CategoryStruct.comp k (φ.f i)) j hj ⋯ - HomologicalComplex.opcyclesMap_comp_descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} {i : ι} [K.HasHomology i] [L.HasHomology i] {A : C} (k : L.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (L.d j i) k = 0) (φ : K ⟶ L) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.opcyclesMap φ i) (L.descOpcycles k j hj hk) = K.descOpcycles (CategoryTheory.CategoryStruct.comp (φ.f i) k) j hj ⋯ - HomologicalComplex.liftCycles_comp_cyclesMap_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} {i : ι} [K.HasHomology i] [L.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) (φ : K ⟶ L) {Z : C} (h : L.cycles i ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.liftCycles k j hj hk) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.cyclesMap φ i) h) = CategoryTheory.CategoryStruct.comp (L.liftCycles (CategoryTheory.CategoryStruct.comp k (φ.f i)) j hj ⋯) h - HomologicalComplex.opcyclesMap_comp_descOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} {i : ι} [K.HasHomology i] [L.HasHomology i] {A : C} (k : L.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : CategoryTheory.CategoryStruct.comp (L.d j i) k = 0) (φ : K ⟶ L) {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.opcyclesMap φ i) (CategoryTheory.CategoryStruct.comp (L.descOpcycles k j hj hk) h) = CategoryTheory.CategoryStruct.comp (K.descOpcycles (CategoryTheory.CategoryStruct.comp (φ.f i) k) j hj ⋯) h - ChainComplex.isIso_descOpcycles_iff 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] (K : ChainComplex C ℕ) {X : C} (φ : K.X 0 ⟶ X) [HomologicalComplex.HasHomology K 0] (hφ : CategoryTheory.CategoryStruct.comp (K.d 1 0) φ = 0) : CategoryTheory.IsIso (HomologicalComplex.descOpcycles K φ 1 ChainComplex.isIso_descOpcycles_iff._proof_1 hφ) ↔ { X₁ := K.X 1, X₂ := K.X 0, X₃ := X, f := K.d 1 0, g := φ, zero := hφ }.Exact ∧ CategoryTheory.Epi φ - CochainComplex.isIso_liftCycles_iff 📋 Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] (K : CochainComplex C ℕ) {X : C} (φ : X ⟶ K.X 0) [HomologicalComplex.HasHomology K 0] (hφ : CategoryTheory.CategoryStruct.comp φ (K.d 0 1) = 0) : CategoryTheory.IsIso (HomologicalComplex.liftCycles K φ 1 CochainComplex.isIso_liftCycles_iff._proof_1 hφ) ↔ { X₁ := X, X₂ := K.X 0, X₃ := K.X 1, f := φ, g := K.d 0 1, zero := hφ }.Exact ∧ CategoryTheory.Mono φ - Homotopy.nullHomotopicMap_f_of_not_rel_left 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₁ k₀ : ι} (r₁₀ : c.Rel k₁ k₀) (hk₀ : ∀ (l : ι), ¬c.Rel k₀ l) (hom : (i j : ι) → C.X i ⟶ D.X j) : (Homotopy.nullHomotopicMap hom).f k₀ = CategoryTheory.CategoryStruct.comp (hom k₀ k₁) (D.d k₁ k₀) - Homotopy.nullHomotopicMap_f_of_not_rel_right 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₁ k₀ : ι} (r₁₀ : c.Rel k₁ k₀) (hk₁ : ∀ (l : ι), ¬c.Rel l k₁) (hom : (i j : ι) → C.X i ⟶ D.X j) : (Homotopy.nullHomotopicMap hom).f k₁ = CategoryTheory.CategoryStruct.comp (C.d k₁ k₀) (hom k₀ k₁) - Homotopy.nullHomotopicMap'_f_of_not_rel_left 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₁ k₀ : ι} (r₁₀ : c.Rel k₁ k₀) (hk₀ : ∀ (l : ι), ¬c.Rel k₀ l) (h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)) : (Homotopy.nullHomotopicMap' h).f k₀ = CategoryTheory.CategoryStruct.comp (h k₀ k₁ r₁₀) (D.d k₁ k₀) - Homotopy.nullHomotopicMap'_f_of_not_rel_right 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₁ k₀ : ι} (r₁₀ : c.Rel k₁ k₀) (hk₁ : ∀ (l : ι), ¬c.Rel l k₁) (h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)) : (Homotopy.nullHomotopicMap' h).f k₁ = CategoryTheory.CategoryStruct.comp (C.d k₁ k₀) (h k₀ k₁ r₁₀) - ChainComplex.nullHomotopicMap_f_zero 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {K L : ChainComplex V ℕ} (h : (i j : ℕ) → K.X i ⟶ L.X j) : (Homotopy.nullHomotopicMap h).f 0 = CategoryTheory.CategoryStruct.comp (h 0 1) (L.d 1 0) - Homotopy.nullHomotopicMap_f 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₂ k₁ k₀ : ι} (r₂₁ : c.Rel k₂ k₁) (r₁₀ : c.Rel k₁ k₀) (hom : (i j : ι) → C.X i ⟶ D.X j) : (Homotopy.nullHomotopicMap hom).f k₁ = CategoryTheory.CategoryStruct.comp (C.d k₁ k₀) (hom k₀ k₁) + CategoryTheory.CategoryStruct.comp (hom k₁ k₂) (D.d k₂ k₁) - Homotopy.nullHomotopicMap'_f 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} {k₂ k₁ k₀ : ι} (r₂₁ : c.Rel k₂ k₁) (r₁₀ : c.Rel k₁ k₀) (h : (i j : ι) → c.Rel j i → (C.X i ⟶ D.X j)) : (Homotopy.nullHomotopicMap' h).f k₁ = CategoryTheory.CategoryStruct.comp (C.d k₁ k₀) (h k₀ k₁ r₁₀) + CategoryTheory.CategoryStruct.comp (h k₁ k₂ r₂₁) (D.d k₂ k₁) - ChainComplex.nullHomotopicMap_f_zero_assoc 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {K L : ChainComplex V ℕ} (h : (i j : ℕ) → K.X i ⟶ L.X j) {Z : V} (h✝ : L.X 0 ⟶ Z) : CategoryTheory.CategoryStruct.comp ((Homotopy.nullHomotopicMap h).f 0) h✝ = CategoryTheory.CategoryStruct.comp (h 0 1) (CategoryTheory.CategoryStruct.comp (L.d 1 0) h✝) - dNext_eq 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} (f : (i j : ι) → C.X i ⟶ D.X j) {i i' : ι} (w : c.Rel i i') : (dNext i) f = CategoryTheory.CategoryStruct.comp (C.d i i') (f i' i) - prevD_eq 📋 Mathlib.Algebra.Homology.Homotopy
{ι : Type u_1} {V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {c : ComplexShape ι} {C D : HomologicalComplex V c} (f : (i j : ι) → C.X i ⟶ D.X j) {j j' : ι} (w : c.Rel j' j) : (prevD j) f = CategoryTheory.CategoryStruct.comp (f j j') (D.d j' j) - ChainComplex.nullHomotopicMap_f_succ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {K L : ChainComplex V ℕ} (h : (i j : ℕ) → K.X i ⟶ L.X j) (n : ℕ) : (Homotopy.nullHomotopicMap h).f (n + 1) = CategoryTheory.CategoryStruct.comp (K.d (n + 1) n) (h n (n + 1)) + CategoryTheory.CategoryStruct.comp (h (n + 1) (n + 2)) (L.d (n + 2) (n + 1)) - dNext_nat 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] (C D : ChainComplex V ℕ) (i : ℕ) (f : (i j : ℕ) → C.X i ⟶ D.X j) : (dNext i) f = CategoryTheory.CategoryStruct.comp (C.d i (i - 1)) (f (i - 1) i) - prevD_nat 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] (C D : CochainComplex V ℕ) (i : ℕ) (f : (i j : ℕ) → C.X i ⟶ D.X j) : (prevD i) f = CategoryTheory.CategoryStruct.comp (f i (i - 1)) (D.d (i - 1) i) - Homotopy.dNext_cochainComplex 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (f : (i j : ℕ) → P.X i ⟶ Q.X j) (j : ℕ) : (dNext j) f = CategoryTheory.CategoryStruct.comp (P.d j (j + 1)) (f (j + 1) j) - Homotopy.prevD_chainComplex 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (f : (i j : ℕ) → P.X i ⟶ Q.X j) (j : ℕ) : (prevD j) f = CategoryTheory.CategoryStruct.comp (f j (j + 1)) (Q.d (j + 1) j) - Homotopy.dNext_succ_chainComplex 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (f : (i j : ℕ) → P.X i ⟶ Q.X j) (i : ℕ) : (dNext (i + 1)) f = CategoryTheory.CategoryStruct.comp (P.d (i + 1) i) (f i (i + 1)) - Homotopy.prevD_succ_cochainComplex 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (f : (i j : ℕ) → P.X i ⟶ Q.X j) (i : ℕ) : (prevD (i + 1)) f = CategoryTheory.CategoryStruct.comp (f (i + 1) i) (Q.d i (i + 1)) - Homotopy.mkCoinductive 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp (P.d 0 1) zero) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') : Homotopy e 0 - Homotopy.mkInductive 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp zero (Q.d 1 0)) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) : Homotopy e 0 - Homotopy.mkCoinductiveAux₂ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp (P.d 0 1) zero) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') (n : ℕ) : (f : P.X n ⟶ HomologicalComplex.xPrev Q n) ×' (f' : HomologicalComplex.xNext P n ⟶ Q.X n) ×' e.f n = CategoryTheory.CategoryStruct.comp f (HomologicalComplex.dTo Q n) + CategoryTheory.CategoryStruct.comp (HomologicalComplex.dFrom P n) f' - Homotopy.mkInductiveAux₂ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp zero (Q.d 1 0)) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) (n : ℕ) : (f : HomologicalComplex.xNext P n ⟶ Q.X n) ×' (f' : P.X n ⟶ HomologicalComplex.xPrev Q n) ×' e.f n = CategoryTheory.CategoryStruct.comp (HomologicalComplex.dFrom P n) f + CategoryTheory.CategoryStruct.comp f' (HomologicalComplex.dTo Q n) - Homotopy.mkCoinductiveAux₁ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') (n : ℕ) : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f' - Homotopy.mkInductiveAux₁ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) (n : ℕ) : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1)) - Homotopy.mkInductiveAux₂_zero 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp zero (Q.d 1 0)) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) : Homotopy.mkInductiveAux₂ e zero comm_zero one comm_one succ 0 = ⟨0, ⟨CategoryTheory.CategoryStruct.comp zero (HomologicalComplex.xPrevIso Q ⋯).inv, ⋯⟩⟩ - Homotopy.mkCoinductiveAux₂_zero 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp (P.d 0 1) zero) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') : Homotopy.mkCoinductiveAux₂ e zero comm_zero one comm_one succ 0 = ⟨0, ⟨CategoryTheory.CategoryStruct.comp (HomologicalComplex.xNextIso P ⋯).hom zero, ⋯⟩⟩ - Homotopy.mkCoinductiveAux₃ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp (P.d 0 1) zero) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') (i j : ℕ) (h : i + 1 = j) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.xNextIso P h).inv (Homotopy.mkCoinductiveAux₂ e zero comm_zero one comm_one succ i).snd.fst = CategoryTheory.CategoryStruct.comp (Homotopy.mkCoinductiveAux₂ e zero comm_zero one comm_one succ j).fst (HomologicalComplex.xPrevIso Q h).hom - Homotopy.mkInductiveAux₃ 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp zero (Q.d 1 0)) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) (i j : ℕ) (h : i + 1 = j) : CategoryTheory.CategoryStruct.comp (Homotopy.mkInductiveAux₂ e zero comm_zero one comm_one succ i).snd.fst (HomologicalComplex.xPrevIso Q h).hom = CategoryTheory.CategoryStruct.comp (HomologicalComplex.xNextIso P h).inv (Homotopy.mkInductiveAux₂ e zero comm_zero one comm_one succ j).fst - Homotopy.mkInductiveAux₂_add_one 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : ChainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 0 ⟶ Q.X 1) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp zero (Q.d 1 0)) (one : P.X 1 ⟶ Q.X 2) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp (P.d 1 0) zero + CategoryTheory.CategoryStruct.comp one (Q.d 2 1)) (succ : (n : ℕ) → (p : (f : P.X n ⟶ Q.X (n + 1)) ×' (f' : P.X (n + 1) ⟶ Q.X (n + 2)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp (P.d (n + 1) n) f + CategoryTheory.CategoryStruct.comp f' (Q.d (n + 2) (n + 1))) → (f'' : P.X (n + 2) ⟶ Q.X (n + 3)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 1)) p.snd.fst + CategoryTheory.CategoryStruct.comp f'' (Q.d (n + 3) (n + 2))) (n : ℕ) : Homotopy.mkInductiveAux₂ e zero comm_zero one comm_one succ (n + 1) = ⟨CategoryTheory.CategoryStruct.comp (HomologicalComplex.xNextIso P ⋯).hom (Homotopy.mkInductiveAux₁ e zero one comm_one succ n).fst, ⟨CategoryTheory.CategoryStruct.comp (Homotopy.mkInductiveAux₁ e zero one comm_one succ n).snd.fst (HomologicalComplex.xPrevIso Q ⋯).inv, ⋯⟩⟩ - Homotopy.mkCoinductiveAux₂_add_one 📋 Mathlib.Algebra.Homology.Homotopy
{V : Type u} [CategoryTheory.Category.{v, u} V] [CategoryTheory.Preadditive V] {P Q : CochainComplex V ℕ} (e : P ⟶ Q) (zero : P.X 1 ⟶ Q.X 0) (comm_zero : e.f 0 = CategoryTheory.CategoryStruct.comp (P.d 0 1) zero) (one : P.X 2 ⟶ Q.X 1) (comm_one : e.f 1 = CategoryTheory.CategoryStruct.comp zero (Q.d 0 1) + CategoryTheory.CategoryStruct.comp (P.d 1 2) one) (succ : (n : ℕ) → (p : (f : P.X (n + 1) ⟶ Q.X n) ×' (f' : P.X (n + 2) ⟶ Q.X (n + 1)) ×' e.f (n + 1) = CategoryTheory.CategoryStruct.comp f (Q.d n (n + 1)) + CategoryTheory.CategoryStruct.comp (P.d (n + 1) (n + 2)) f') → (f'' : P.X (n + 3) ⟶ Q.X (n + 2)) ×' e.f (n + 2) = CategoryTheory.CategoryStruct.comp p.snd.fst (Q.d (n + 1) (n + 2)) + CategoryTheory.CategoryStruct.comp (P.d (n + 2) (n + 3)) f'') (n : ℕ) : Homotopy.mkCoinductiveAux₂ e zero comm_zero one comm_one succ (n + 1) = ⟨CategoryTheory.CategoryStruct.comp (Homotopy.mkCoinductiveAux₁ e zero one comm_one succ n).fst (HomologicalComplex.xPrevIso Q ⋯).inv, ⟨CategoryTheory.CategoryStruct.comp (HomologicalComplex.xNextIso P ⋯).hom (Homotopy.mkCoinductiveAux₁ e zero one comm_one succ n).snd.fst, ⋯⟩⟩ - CochainComplex.HomComplex.Cochain.diff_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] (K : CochainComplex C ℤ) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.HomComplex.Cochain.diff K).v p q hpq = K.d p q - CochainComplex.HomComplex_d_hom_apply 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] (F G : CochainComplex C ℤ) (i j : ℤ) (a✝ : CochainComplex.HomComplex.Cochain F G i) : (AddCommGrpCat.Hom.hom ((F.HomComplex G).d i j)) a✝ = CochainComplex.HomComplex.δ i j a✝ - CochainComplex.HomComplex.Cochain.d_comp_ofHoms_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (ψ : (p : ℤ) → F.X p ⟶ G.X p) (p' p q : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp (F.d p' p) ((CochainComplex.HomComplex.Cochain.ofHoms ψ).v p q hpq) = CategoryTheory.CategoryStruct.comp (F.d p' q) (ψ q) - CochainComplex.HomComplex.Cochain.ofHoms_v_comp_d 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (ψ : (p : ℤ) → F.X p ⟶ G.X p) (p q q' : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.HomComplex.Cochain.ofHoms ψ).v p q hpq) (G.d q q') = CategoryTheory.CategoryStruct.comp (ψ p) (G.d p q') - CochainComplex.HomComplex.Cochain.d_comp_ofHom_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) (p' p q : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp (F.d p' p) ((CochainComplex.HomComplex.Cochain.ofHom φ).v p q hpq) = CategoryTheory.CategoryStruct.comp (F.d p' q) (φ.f q) - CochainComplex.HomComplex.Cochain.ofHom_v_comp_d 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) (p q q' : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.HomComplex.Cochain.ofHom φ).v p q hpq) (G.d q q') = CategoryTheory.CategoryStruct.comp (φ.f p) (G.d p q') - CochainComplex.HomComplex.Cocycle.isKernel 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] (K L : CochainComplex C ℤ) (n m : ℤ) (hm : n + 1 = m) : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι (AddCommGrpCat.ofHom (CochainComplex.HomComplex.Cocycle.toCochainAddMonoidHom K L n)) ⋯) - CochainComplex.HomComplex.Cochain.δ_single 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} {p q : ℤ} (f : K.X p ⟶ L.X q) (n m : ℤ) (hm : n + 1 = m) (p' q' : ℤ) (hp' : p' + 1 = p) (hq' : q + 1 = q') : CochainComplex.HomComplex.δ n m (CochainComplex.HomComplex.Cochain.single f n) = CochainComplex.HomComplex.Cochain.single (CategoryTheory.CategoryStruct.comp f (L.d q q')) m + m.negOnePow • CochainComplex.HomComplex.Cochain.single (CategoryTheory.CategoryStruct.comp (K.d p' p) f) m - CochainComplex.HomComplex.δ_zero_cochain_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (z : CochainComplex.HomComplex.Cochain F G 0) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.HomComplex.δ 0 1 z).v p q hpq = CategoryTheory.CategoryStruct.comp (z.v p p ⋯) (G.d p q) - CategoryTheory.CategoryStruct.comp (F.d p q) (z.v q q ⋯) - CochainComplex.HomComplex.δ_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (n m : ℤ) (hnm : n + 1 = m) (z : CochainComplex.HomComplex.Cochain F G n) (p q : ℤ) (hpq : p + m = q) (q₁ q₂ : ℤ) (hq₁ : q₁ = q - 1) (hq₂ : p + 1 = q₂) : (CochainComplex.HomComplex.δ n m z).v p q hpq = CategoryTheory.CategoryStruct.comp (z.v p q₁ ⋯) (G.d q₁ q) + m.negOnePow • CategoryTheory.CategoryStruct.comp (F.d p q₂) (z.v q₂ q ⋯) - 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.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.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.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.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.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.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.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.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 - 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.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.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)
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