Loogle!
Result
Found 228 declarations mentioning ComplexShape.next. Of these, only the first 200 are shown.
- ComplexShape.next 📋 Mathlib.Algebra.Homology.ComplexShape
{ι : Type u_1} (c : ComplexShape ι) (i : ι) : ι - ComplexShape.next_eq' 📋 Mathlib.Algebra.Homology.ComplexShape
{ι : Type u_1} (c : ComplexShape ι) {i j : ι} (h : c.Rel i j) : c.next i = j - ComplexShape.next_eq_self' 📋 Mathlib.Algebra.Homology.ComplexShape
{ι : Type u_1} (c : ComplexShape ι) (j : ι) (hj : ∀ (k : ι), ¬c.Rel j k) : c.next j = j - ComplexShape.next_eq_self 📋 Mathlib.Algebra.Homology.ComplexShape
{ι : Type u_1} (c : ComplexShape ι) (j : ι) (hj : ¬c.Rel j (c.next j)) : c.next j = j - ChainComplex.next_nat_zero 📋 Mathlib.Algebra.Homology.HomologicalComplex
: (ComplexShape.down ℕ).next 0 = 0 - ChainComplex.next_nat_succ 📋 Mathlib.Algebra.Homology.HomologicalComplex
(i : ℕ) : (ComplexShape.down ℕ).next (i + 1) = i - CochainComplex.next 📋 Mathlib.Algebra.Homology.HomologicalComplex
(α : Type u_2) [AddRightCancelSemigroup α] [One α] (i : α) : (ComplexShape.up α).next i = i + 1 - HomologicalComplex.xNextIsoSelf 📋 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 : ι} (h : ¬c.Rel i (c.next i)) : C.xNext i ≅ C.X i - ChainComplex.next 📋 Mathlib.Algebra.Homology.HomologicalComplex
(α : Type u_2) [AddGroup α] [One α] (i : α) : (ComplexShape.down α).next i = i - 1 - HomologicalComplex.dFrom_eq_zero 📋 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 : ι} (h : ¬c.Rel i (c.next i)) : C.dFrom i = 0 - HomologicalComplex.dFrom_comp_xNextIsoSelf 📋 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 : ι} (h : ¬c.Rel i (c.next i)) : CategoryTheory.CategoryStruct.comp (C.dFrom i) (C.xNextIsoSelf h).hom = 0 - HomologicalComplex.dFrom_comp_xNextIsoSelf_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 : ι} (h : ¬c.Rel i (c.next i)) {Z : V} (h✝ : C.X i ⟶ Z) : CategoryTheory.CategoryStruct.comp (C.dFrom i) (CategoryTheory.CategoryStruct.comp (C.xNextIsoSelf h).hom h✝) = CategoryTheory.CategoryStruct.comp 0 h✝ - HomologicalComplex.exactAt_iff' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) : K.ExactAt j ↔ (K.sc' i j k).Exact - HomologicalComplex.isoSc' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) : K.sc j ≅ K.sc' i j k - HomologicalComplex.shortComplexFunctor_obj_X₃ 📋 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).X₃ = K.X (c.next i) - HomologicalComplex.homology_sc'_eq_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) (j : ι) [K.HasHomology j] [(K.sc' (c.prev j) j (c.next j)).HasHomology] : (K.sc' (c.prev j) j (c.next j)).homology = K.homology j - HomologicalComplex.homologyIsoSc' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : K.homology j ≅ (K.sc' i j k).homology - HomologicalComplex.natIsoSc' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) : HomologicalComplex.shortComplexFunctor C c j ≅ HomologicalComplex.shortComplexFunctor' C c i j k - 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.cyclesIsoSc' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : K.cycles j ≅ (K.sc' i j k).cycles - HomologicalComplex.opcyclesIsoSc' 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : K.opcycles j ≅ (K.sc' i j k).opcycles - HomologicalComplex.homologyFunctorIso' 📋 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 : ι) [CategoryTheory.CategoryWithHomology C] (hi : c.prev j = i) (hk : c.next j = k) : HomologicalComplex.homologyFunctor C c j ≅ (HomologicalComplex.shortComplexFunctor' C c i j k).comp (CategoryTheory.ShortComplex.homologyFunctor C) - HomologicalComplex.homologyIsoSc'_eq_refl 📋 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) (j : ι) [K.HasHomology j] [(K.sc' (c.prev j) j (c.next j)).HasHomology] : K.homologyIsoSc' (c.prev j) j (c.next j) ⋯ ⋯ = CategoryTheory.Iso.refl (K.homology 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.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.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.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.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.homologyIsKernel 📋 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.next i = j) : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι (K.homologyι i) ⋯) - 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.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.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.cyclesIsoSc'_hom_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).hom (K.sc' i j k).iCycles = K.iCycles j - HomologicalComplex.pOpcycles_opcyclesIsoSc'_inv 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.sc' i j k).pOpcycles (K.opcyclesIsoSc' i j k hi hk).inv = K.pOpcycles j - 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.cyclesIsoSc'_inv_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).inv (K.iCycles j) = (K.sc' i j k).iCycles - HomologicalComplex.pOpcycles_opcyclesIsoSc'_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.pOpcycles j) (K.opcyclesIsoSc' i j k hi hk).hom = (K.sc' i j k).pOpcycles - HomologicalComplex.opcyclesIsoSc'_inv_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).inv (K.fromOpcycles j k) = (K.sc' i j k).fromOpcycles - HomologicalComplex.toCycles_cyclesIsoSc'_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.toCycles i j) (K.cyclesIsoSc' i j k hi hk).hom = (K.sc' i j k).toCycles - 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.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.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.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.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.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.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.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.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.natIsoSc'_hom_app_τ₂ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₂ = CategoryTheory.CategoryStruct.id (X.X j) - HomologicalComplex.natIsoSc'_inv_app_τ₂ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₂ = CategoryTheory.CategoryStruct.id (X.X j) - HomologicalComplex.homologyIsoSc'_inv_ι 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).inv (K.homologyι j) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyι (K.opcyclesIsoSc' i j k hi hk).inv - HomologicalComplex.π_homologyIsoSc'_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.homologyπ j) (K.homologyIsoSc' i j k hi hk).hom = CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).hom (K.sc' i j k).homologyπ - HomologicalComplex.cyclesIsoSc'_hom_iCycles_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : (K.sc' i j k).X₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).hom (CategoryTheory.CategoryStruct.comp (K.sc' i j k).iCycles h) = CategoryTheory.CategoryStruct.comp (K.iCycles j) h - HomologicalComplex.pOpcycles_opcyclesIsoSc'_inv_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : K.opcycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.sc' i j k).pOpcycles (CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).inv h) = CategoryTheory.CategoryStruct.comp (K.pOpcycles j) h - HomologicalComplex.cyclesIsoSc'_inv_iCycles_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : K.X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).inv (CategoryTheory.CategoryStruct.comp (K.iCycles j) h) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).iCycles h - HomologicalComplex.pOpcycles_opcyclesIsoSc'_hom_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : (K.sc' i j k).opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.pOpcycles j) (CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).hom h) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).pOpcycles h - HomologicalComplex.natIsoSc'_hom_app_τ₁ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₁ = (X.XIsoOfEq hi).hom - HomologicalComplex.natIsoSc'_hom_app_τ₃ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₃ = (X.XIsoOfEq hk).hom - HomologicalComplex.natIsoSc'_inv_app_τ₁ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₁ = (X.XIsoOfEq hi).inv - HomologicalComplex.natIsoSc'_inv_app_τ₃ 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c) : ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₃ = (X.XIsoOfEq hk).inv - HomologicalComplex.opcyclesIsoSc'_inv_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : K.X k ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).inv (CategoryTheory.CategoryStruct.comp (K.fromOpcycles j k) h) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).fromOpcycles h - HomologicalComplex.toCycles_cyclesIsoSc'_hom_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : (K.sc' i j k).cycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.toCycles i j) (CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).hom h) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).toCycles 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.homologyIsoSc'_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 k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).hom (K.sc' i j k).homologyι = CategoryTheory.CategoryStruct.comp (K.homologyι j) (K.opcyclesIsoSc' i j k hi hk).hom - HomologicalComplex.π_homologyIsoSc'_inv 📋 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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] : CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyπ (K.homologyIsoSc' i j k hi hk).inv = CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).inv (K.homologyπ j) - 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.homologyIsoSc'_inv_ι_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : K.opcycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).inv (CategoryTheory.CategoryStruct.comp (K.homologyι j) h) = CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyι (CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).inv h) - HomologicalComplex.π_homologyIsoSc'_hom_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : (K.sc' i j k).homology ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyπ j) (CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).hom h) = CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).hom (CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyπ h) - HomologicalComplex.homologyIsoSc'_hom_ι_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : (K.sc' i j k).opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).hom (CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyι h) = CategoryTheory.CategoryStruct.comp (K.homologyι j) (CategoryTheory.CategoryStruct.comp (K.opcyclesIsoSc' i j k hi hk).hom h) - HomologicalComplex.π_homologyIsoSc'_inv_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 : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [(K.sc' i j k).HasHomology] {Z : C} (h : K.homology j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.sc' i j k).homologyπ (CategoryTheory.CategoryStruct.comp (K.homologyIsoSc' i j k hi hk).inv h) = CategoryTheory.CategoryStruct.comp (K.cyclesIsoSc' i j k hi hk).inv (CategoryTheory.CategoryStruct.comp (K.homologyπ j) h) - dNext_eq_zero 📋 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 : ι) (hi : ¬c.Rel i (c.next i)) : (dNext i) f = 0 - HomologicalComplex.homotopyCofiber.XIso 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) : HomologicalComplex.homotopyCofiber.X φ i ≅ G.X i - HomologicalComplex.homotopyCofiber.sndX_inrX 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (HomologicalComplex.homotopyCofiber.inrX φ i) = CategoryTheory.CategoryStruct.id (HomologicalComplex.homotopyCofiber.X φ i) - HomologicalComplex.homotopyCofiber.sndX_inrX_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ i) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) h) = h - HomologicalComplex.homotopyCofiber.ext_from_X' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {A : C} {f g : HomologicalComplex.homotopyCofiber.X φ i ⟶ A} (h : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) f = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ i) g) : f = g - HomologicalComplex.homotopyCofiber.ext_to_X' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i : ι) (hi : ¬c.Rel i (c.next i)) {A : C} {f g : A ⟶ HomologicalComplex.homotopyCofiber.X φ i} (h : CategoryTheory.CategoryStruct.comp f (HomologicalComplex.homotopyCofiber.sndX φ i) = CategoryTheory.CategoryStruct.comp g (HomologicalComplex.homotopyCofiber.sndX φ i)) : f = g - HomologicalComplex.homotopyCofiber.inlX_d' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) (hj : ¬c.Rel j (c.next j)) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (HomologicalComplex.homotopyCofiber.d φ i j) = CategoryTheory.CategoryStruct.comp (φ.f j) (HomologicalComplex.homotopyCofiber.inrX φ j) - HomologicalComplex.homotopyCofiber.inlX_d'_assoc 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (i j : ι) (hij : c.Rel i j) (hj : ¬c.Rel j (c.next j)) {Z : C} (h : HomologicalComplex.homotopyCofiber.X φ j ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inlX φ j i hij) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.d φ i j) h) = CategoryTheory.CategoryStruct.comp (φ.f j) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.inrX φ j) h) - HomologicalComplex.homotopyCofiber.desc_f' 📋 Mathlib.Algebra.Homology.HomotopyCofiber
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {ι : Type u_2} {c : ComplexShape ι} {F G K : HomologicalComplex C c} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] [DecidableRel c.Rel] (α : G ⟶ K) (hα : Homotopy (CategoryTheory.CategoryStruct.comp φ α) 0) (j : ι) (hj : ¬c.Rel j (c.next j)) : (HomologicalComplex.homotopyCofiber.desc φ α hα).f j = CategoryTheory.CategoryStruct.comp (HomologicalComplex.homotopyCofiber.sndX φ j) (α.f j) - CategoryTheory.ShortComplex.ShortExact.δ_eq 📋 Mathlib.Algebra.Homology.HomologySequence
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} {S : CategoryTheory.ShortComplex (HomologicalComplex C c)} (hS : S.ShortExact) (i j : ι) (hij : c.Rel i j) {A : C} (x₃ : A ⟶ S.X₃.X i) (hx₃ : CategoryTheory.CategoryStruct.comp x₃ (S.X₃.d i j) = 0) (x₂ : A ⟶ S.X₂.X i) (hx₂ : CategoryTheory.CategoryStruct.comp x₂ (S.g.f i) = x₃) (x₁ : A ⟶ S.X₁.X j) (hx₁ : CategoryTheory.CategoryStruct.comp x₁ (S.f.f j) = CategoryTheory.CategoryStruct.comp x₂ (S.X₂.d i j)) (k : ι) (hk : c.next j = k) : CategoryTheory.CategoryStruct.comp (S.X₃.liftCycles x₃ j ⋯ hx₃) (CategoryTheory.CategoryStruct.comp (S.X₃.homologyπ i) (hS.δ i j hij)) = CategoryTheory.CategoryStruct.comp (S.X₁.liftCycles x₁ k hk ⋯) (S.X₁.homologyπ j) - quasiIsoAt_iff' 📋 Mathlib.Algebra.Homology.QuasiIso
{ι : Type u_1} {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {c : ComplexShape ι} {K L : HomologicalComplex C c} (f : K ⟶ L) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) [K.HasHomology j] [L.HasHomology j] [(K.sc' i j k).HasHomology] [(L.sc' i j k).HasHomology] : QuasiIsoAt f j ↔ CategoryTheory.ShortComplex.QuasiIso ((HomologicalComplex.shortComplexFunctor' C c i j k).map f) - CochainComplex.shiftShortComplexFunctorIso_hom_app_τ₂ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).hom.app X).τ₂ = (HomologicalComplex.XIsoOfEq X ⋯).hom - CochainComplex.shiftShortComplexFunctorIso_inv_app_τ₂ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).inv.app X).τ₂ = (HomologicalComplex.XIsoOfEq X ⋯).inv - CochainComplex.shiftShortComplexFunctorIso_hom_app_τ₁ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).hom.app X).τ₁ = n.negOnePow • (HomologicalComplex.XIsoOfEq X ⋯).hom - CochainComplex.shiftShortComplexFunctorIso_hom_app_τ₃ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).hom.app X).τ₃ = n.negOnePow • (HomologicalComplex.XIsoOfEq X ⋯).hom - CochainComplex.shiftShortComplexFunctorIso_inv_app_τ₁ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).inv.app X).τ₁ = n.negOnePow • (HomologicalComplex.XIsoOfEq X ⋯).inv - CochainComplex.shiftShortComplexFunctorIso_inv_app_τ₃ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
(C : Type u_1) [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (n i i' : ℤ) (hi : n + i = i') (X : CochainComplex C ℤ) : ((CochainComplex.shiftShortComplexFunctorIso C n i i' hi).inv.app X).τ₃ = n.negOnePow • (HomologicalComplex.XIsoOfEq X ⋯).inv - CochainComplex.liftCycles_shift_homologyπ_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (K : CochainComplex C ℤ) {A : C} {n i : ℤ} (f : A ⟶ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).X i) (j : ℤ) (hj : (ComplexShape.up ℤ).next i = j) (hf : CategoryTheory.CategoryStruct.comp f (((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).d i j) = 0) (i' : ℤ) (hi' : n + i = i') (j' : ℤ) (hj' : (ComplexShape.up ℤ).next i' = j') {Z : C} (h : HomologicalComplex.homology ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i ⟶ Z) : CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) f j hj hf) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i) h) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles K (CategoryTheory.CategoryStruct.comp f (K.shiftFunctorObjXIso n i i' ⋯).hom) j' hj' ⋯) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ K i') (CategoryTheory.CategoryStruct.comp (((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n i i' hi').inv.app K) h)) - CochainComplex.liftCycles_shift_homologyπ 📋 Mathlib.Algebra.Homology.HomotopyCategory.ShiftSequence
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.CategoryWithHomology C] (K : CochainComplex C ℤ) {A : C} {n i : ℤ} (f : A ⟶ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).X i) (j : ℤ) (hj : (ComplexShape.up ℤ).next i = j) (hf : CategoryTheory.CategoryStruct.comp f (((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K).d i j) = 0) (i' : ℤ) (hi' : n + i = i') (j' : ℤ) (hj' : (ComplexShape.up ℤ).next i' = j') : CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) f j hj hf) (HomologicalComplex.homologyπ ((CategoryTheory.shiftFunctor (CochainComplex C ℤ) n).obj K) i) = CategoryTheory.CategoryStruct.comp (HomologicalComplex.liftCycles K (CategoryTheory.CategoryStruct.comp f (K.shiftFunctorObjXIso n i i' ⋯).hom) j' hj' ⋯) (CategoryTheory.CategoryStruct.comp (HomologicalComplex.homologyπ K i') (((HomologicalComplex.homologyFunctor C (ComplexShape.up ℤ) 0).shiftIso n i i' hi').inv.app K)) - HomologicalComplex.extend_d_from_eq_zero 📋 Mathlib.Algebra.Homology.Embedding.Extend
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroObject C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c) (e : c.Embedding c') (i' j' : ι') (i : ι) (hi : e.f i = i') (hi' : ¬c.Rel i (c.next i)) : (K.extend e).d i' j' = 0 - HomologicalComplex.extend.homologyData' 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : ((K.extend e).sc j').HomologyData - HomologicalComplex.extend.homologyData 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).HomologyData) : ((K.extend e).sc' i' j' k').HomologyData - HomologicalComplex.extend.leftHomologyData 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).LeftHomologyData) : ((K.extend e).sc' i' j' k').LeftHomologyData - HomologicalComplex.extend.rightHomologyData 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) : ((K.extend e).sc' i' j' k').RightHomologyData - HomologicalComplex.extend.leftHomologyData.kernelFork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {j k : ι} {j' k' : ι'} (hj' : e.f j = j') (hk : c.next j = k) (hk' : c'.next j' = k') (cone : CategoryTheory.Limits.KernelFork (K.d j k)) : CategoryTheory.Limits.KernelFork ((K.extend e).d j' k') - HomologicalComplex.extend.leftHomologyData_H 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).LeftHomologyData) : (HomologicalComplex.extend.leftHomologyData K e hj' hi hi' hk hk' h).H = h.H - HomologicalComplex.extend.leftHomologyData_K 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).LeftHomologyData) : (HomologicalComplex.extend.leftHomologyData K e hj' hi hi' hk hk' h).K = h.K - HomologicalComplex.extend.rightHomologyData_H 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) : (HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h).H = h.H - HomologicalComplex.extend.rightHomologyData_Q 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) : (HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h).Q = h.Q - HomologicalComplex.extend.homologyData'_left_H 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).left.H = h.left.H - HomologicalComplex.extend.homologyData'_left_K 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).left.K = h.left.K - HomologicalComplex.extend.homologyData'_right_H 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).right.H = h.right.H - HomologicalComplex.extend.homologyData'_right_Q 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).right.Q = h.right.Q - HomologicalComplex.extend.leftHomologyData_π 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).LeftHomologyData) : (HomologicalComplex.extend.leftHomologyData K e hj' hi hi' hk hk' h).π = h.π - HomologicalComplex.extend.rightHomologyData_ι 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) : (HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h).ι = h.ι - HomologicalComplex.extend.homologyData'_iso 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).iso = h.iso - HomologicalComplex.extend.homologyData_left 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData K e hj' hi hi' hk hk' h).left = HomologicalComplex.extend.leftHomologyData K e hj' hi hi' hk hk' h.left - HomologicalComplex.extend.homologyData_right 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData K e hj' hi hi' hk hk' h).right = HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h.right - HomologicalComplex.extend.homologyData_iso 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData K e hj' hi hi' hk hk' h).iso = h.iso - HomologicalComplex.extend.homologyData'_left_π 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).left.π = h.left.π - HomologicalComplex.extend.homologyData'_right_ι 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).right.ι = h.right.ι - HomologicalComplex.extend.rightHomologyData_p 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) : (HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h).p = CategoryTheory.CategoryStruct.comp (K.extendXIso e hj').hom h.p - HomologicalComplex.extend.leftHomologyData_i 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).LeftHomologyData) : (HomologicalComplex.extend.leftHomologyData K e hj' hi hi' hk hk' h).i = CategoryTheory.CategoryStruct.comp h.i (K.extendXIso e hj').inv - HomologicalComplex.extend.rightHomologyData_g' 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (h : (K.sc' i j k).RightHomologyData) (hk'' : e.f k = k') : (HomologicalComplex.extend.rightHomologyData K e hj' hi hi' hk hk' h).g' = CategoryTheory.CategoryStruct.comp h.g' (K.extendXIso e hk'').inv - HomologicalComplex.extend.homologyData'_left_i 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).left.i = CategoryTheory.CategoryStruct.comp h.left.i (K.extendXIso e hj').inv - HomologicalComplex.extend.homologyData'_right_p 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (h : (K.sc' i j k).HomologyData) : (HomologicalComplex.extend.homologyData' K e hj' hi hk h).right.p = CategoryTheory.CategoryStruct.comp (K.extendXIso e hj').hom h.right.p - HomologicalComplex.extend.leftHomologyData.isLimitKernelFork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {j k : ι} {j' k' : ι'} (hj' : e.f j = j') (hk : c.next j = k) (hk' : c'.next j' = k') (cone : CategoryTheory.Limits.KernelFork (K.d j k)) (hcone : CategoryTheory.Limits.IsLimit cone) : CategoryTheory.Limits.IsLimit (HomologicalComplex.extend.leftHomologyData.kernelFork K e hj' hk hk' cone) - HomologicalComplex.extend.comp_d_eq_zero_iff 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {j k : ι} {j' k' : ι'} (hj' : e.f j = j') (hk : c.next j = k) (hk' : c'.next j' = k') ⦃W : C⦄ (φ : W ⟶ K.X j) : CategoryTheory.CategoryStruct.comp φ (K.d j k) = 0 ↔ CategoryTheory.CategoryStruct.comp φ (CategoryTheory.CategoryStruct.comp (K.extendXIso e hj').inv ((K.extend e).d j' k')) = 0 - HomologicalComplex.extend.leftHomologyData.cokernelCofork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cone : CategoryTheory.Limits.KernelFork (K.d j k)) (hcone : CategoryTheory.Limits.IsLimit cone) (cocone : CategoryTheory.Limits.CokernelCofork (hcone.lift (CategoryTheory.Limits.KernelFork.ofι (K.d i j) ⋯))) : CategoryTheory.Limits.CokernelCofork ((HomologicalComplex.extend.leftHomologyData.isLimitKernelFork K e hj' hk hk' cone hcone).lift (CategoryTheory.Limits.KernelFork.ofι ((K.extend e).d i' j') ⋯)) - HomologicalComplex.extend.rightHomologyData.kernelFork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cocone : CategoryTheory.Limits.CokernelCofork (K.d i j)) (hcocone : CategoryTheory.Limits.IsColimit cocone) (cone : CategoryTheory.Limits.KernelFork (hcocone.desc (CategoryTheory.Limits.CokernelCofork.ofπ (K.d j k) ⋯))) : CategoryTheory.Limits.KernelFork ((HomologicalComplex.extend.rightHomologyData.isColimitCokernelCofork K e hj' hi hi' cocone hcocone).desc (CategoryTheory.Limits.CokernelCofork.ofπ ((K.extend e).d j' k') ⋯)) - HomologicalComplex.extend.rightHomologyData.d_comp_desc_eq_zero_iff' 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {j' k' : ι'} (hj' : e.f j = j') (hk : c.next j = k) (hk' : c'.next j' = k') (cocone : CategoryTheory.Limits.CokernelCofork (K.d i j)) (hcocone : CategoryTheory.Limits.IsColimit cocone) ⦃W : C⦄ (f' : cocone.pt ⟶ K.X k) (hf' : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Cofork.π cocone) f' = K.d j k) (f'' : cocone.pt ⟶ (K.extend e).X k') (hf'' : CategoryTheory.CategoryStruct.comp (K.extendXIso e hj').hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Cofork.π cocone) f'') = (K.extend e).d j' k') (φ : W ⟶ cocone.pt) : CategoryTheory.CategoryStruct.comp φ f' = 0 ↔ CategoryTheory.CategoryStruct.comp φ f'' = 0 - HomologicalComplex.extend.rightHomologyData.d_comp_desc_eq_zero_iff 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cocone : CategoryTheory.Limits.CokernelCofork (K.d i j)) (hcocone : CategoryTheory.Limits.IsColimit cocone) ⦃W : C⦄ (φ : W ⟶ cocone.pt) : CategoryTheory.CategoryStruct.comp φ (hcocone.desc (CategoryTheory.Limits.CokernelCofork.ofπ (K.d j k) ⋯)) = 0 ↔ CategoryTheory.CategoryStruct.comp φ ((HomologicalComplex.extend.rightHomologyData.isColimitCokernelCofork K e hj' hi hi' cocone hcocone).desc (CategoryTheory.Limits.CokernelCofork.ofπ ((K.extend e).d j' k') ⋯)) = 0 - HomologicalComplex.extend.leftHomologyData.lift_d_comp_eq_zero_iff 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cone : CategoryTheory.Limits.KernelFork (K.d j k)) (hcone : CategoryTheory.Limits.IsLimit cone) ⦃W : C⦄ (φ : cone.pt ⟶ W) : CategoryTheory.CategoryStruct.comp (hcone.lift (CategoryTheory.Limits.KernelFork.ofι (K.d i j) ⋯)) φ = 0 ↔ CategoryTheory.CategoryStruct.comp ((HomologicalComplex.extend.leftHomologyData.isLimitKernelFork K e hj' hk hk' cone hcone).lift (CategoryTheory.Limits.KernelFork.ofι ((K.extend e).d i' j') ⋯)) φ = 0 - HomologicalComplex.extend.leftHomologyData.isColimitCokernelCofork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cone : CategoryTheory.Limits.KernelFork (K.d j k)) (hcone : CategoryTheory.Limits.IsLimit cone) (cocone : CategoryTheory.Limits.CokernelCofork (hcone.lift (CategoryTheory.Limits.KernelFork.ofι (K.d i j) ⋯))) (hcocone : CategoryTheory.Limits.IsColimit cocone) : CategoryTheory.Limits.IsColimit (HomologicalComplex.extend.leftHomologyData.cokernelCofork K e hj' hi hi' hk hk' cone hcone cocone) - HomologicalComplex.extend.rightHomologyData.isLimitKernelFork 📋 Mathlib.Algebra.Homology.Embedding.ExtendHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroObject C] (K : HomologicalComplex C c) (e : c.Embedding c') {i j k : ι} {i' j' k' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hi' : c'.prev j' = i') (hk : c.next j = k) (hk' : c'.next j' = k') (cocone : CategoryTheory.Limits.CokernelCofork (K.d i j)) (hcocone : CategoryTheory.Limits.IsColimit cocone) (cone : CategoryTheory.Limits.KernelFork (hcocone.desc (CategoryTheory.Limits.CokernelCofork.ofπ (K.d j k) ⋯))) (hcone : CategoryTheory.Limits.IsLimit cone) : CategoryTheory.Limits.IsLimit (HomologicalComplex.extend.rightHomologyData.kernelFork K e hj' hi hi' hk hk' cocone hcocone cone) - ComplexShape.Embedding.not_boundaryGE_next' 📋 Mathlib.Algebra.Homology.Embedding.Boundary
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsRelIff] {j k : ι} (hj : ¬e.BoundaryGE j) (hk : c.next j = k) : ¬e.BoundaryGE k - ComplexShape.Embedding.next_f 📋 Mathlib.Algebra.Homology.Embedding.Boundary
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsTruncGE] {j k : ι} (hjk : c.next j = k) : c'.next (e.f j) = e.f k - ComplexShape.Embedding.next_f_of_not_boundaryLE 📋 Mathlib.Algebra.Homology.Embedding.Boundary
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsRelIff] {j k : ι} (hjk : c.next j = k) (hj : ¬e.BoundaryLE j) : c'.next (e.f j) = e.f k - HomologicalComplex.restriction.sc'Iso 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (K.restriction e).sc' i j k ≅ K.sc' i' j' k' - HomologicalComplex.restriction.hasHomology 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] : (K.restriction e).HasHomology j - HomologicalComplex.restrictionCyclesIso 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : (K.restriction e).cycles j ≅ K.cycles j' - HomologicalComplex.restrictionHomologyIso 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : (K.restriction e).homology j ≅ K.homology j' - HomologicalComplex.restriction.sc'Iso_hom_τ₁ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₁ = (K.restrictionXIso e hi').hom - HomologicalComplex.restriction.sc'Iso_hom_τ₂ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₂ = (K.restrictionXIso e hj').hom - HomologicalComplex.restriction.sc'Iso_hom_τ₃ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').hom.τ₃ = (K.restrictionXIso e hk').hom - HomologicalComplex.restriction.sc'Iso_inv_τ₁ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₁ = (K.restrictionXIso e hi').inv - HomologicalComplex.restriction.sc'Iso_inv_τ₂ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₂ = (K.restrictionXIso e hj').inv - HomologicalComplex.restriction.sc'Iso_inv_τ₃ 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') : (HomologicalComplex.restriction.sc'Iso K e i j k hi' hj' hk' hi'' hk'').inv.τ₃ = (K.restrictionXIso e hk').inv - HomologicalComplex.restrictionCyclesIso_hom_iCycles 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').hom (K.iCycles j') = CategoryTheory.CategoryStruct.comp ((K.restriction e).iCycles j) (K.restrictionXIso e hj').hom - HomologicalComplex.restrictionCyclesIso_inv_iCycles 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').inv ((K.restriction e).iCycles j) = CategoryTheory.CategoryStruct.comp (K.iCycles j') (K.restrictionXIso e hj').inv - HomologicalComplex.homologyπ_restrictionHomologyIso_hom 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyπ j) (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').hom = CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').hom (K.homologyπ j') - HomologicalComplex.homologyπ_restrictionHomologyIso_inv 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp (K.homologyπ j') (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').inv = CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').inv ((K.restriction e).homologyπ j) - HomologicalComplex.restrictionHomologyIso_hom_homologyι 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').hom (K.homologyι j') = CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyι j) (K.restrictionOpcyclesIso e i j hi hi' hj' hi'').hom - HomologicalComplex.restrictionHomologyIso_inv_homologyι 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] : CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').inv ((K.restriction e).homologyι j) = CategoryTheory.CategoryStruct.comp (K.homologyι j') (K.restrictionOpcyclesIso e i j hi hi' hj' hi'').inv - HomologicalComplex.restrictionCyclesIso_hom_iCycles_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.X j' ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').hom (CategoryTheory.CategoryStruct.comp (K.iCycles j') h) = CategoryTheory.CategoryStruct.comp ((K.restriction e).iCycles j) (CategoryTheory.CategoryStruct.comp (K.restrictionXIso e hj').hom h) - HomologicalComplex.restrictionCyclesIso_inv_iCycles_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (j k : ι) (hk : c.next j = k) {j' k' : ι'} (hj' : e.f j = j') (hk' : e.f k = k') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).X j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').inv (CategoryTheory.CategoryStruct.comp ((K.restriction e).iCycles j) h) = CategoryTheory.CategoryStruct.comp (K.iCycles j') (CategoryTheory.CategoryStruct.comp (K.restrictionXIso e hj').inv h) - HomologicalComplex.homologyπ_restrictionHomologyIso_hom_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.homology j' ⟶ Z) : CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyπ j) (CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').hom h) = CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').hom (CategoryTheory.CategoryStruct.comp (K.homologyπ j') h) - HomologicalComplex.homologyπ_restrictionHomologyIso_inv_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).homology j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.homologyπ j') (CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').inv h) = CategoryTheory.CategoryStruct.comp (K.restrictionCyclesIso e j k hk hj' hk' hk'').inv (CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyπ j) h) - HomologicalComplex.restrictionHomologyIso_hom_homologyι_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : K.opcycles j' ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').hom (CategoryTheory.CategoryStruct.comp (K.homologyι j') h) = CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyι j) (CategoryTheory.CategoryStruct.comp (K.restrictionOpcyclesIso e i j hi hi' hj' hi'').hom h) - HomologicalComplex.restrictionHomologyIso_inv_homologyι_assoc 📋 Mathlib.Algebra.Homology.Embedding.RestrictionHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsRelIff] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {i' j' k' : ι'} (hi' : e.f i = i') (hj' : e.f j = j') (hk' : e.f k = k') (hi'' : c'.prev j' = i') (hk'' : c'.next j' = k') [K.HasHomology j'] [(K.restriction e).HasHomology j] {Z : C} (h : (K.restriction e).opcycles j ⟶ Z) : CategoryTheory.CategoryStruct.comp (K.restrictionHomologyIso e i j k hi hk hi' hj' hk' hi'' hk'').inv (CategoryTheory.CategoryStruct.comp ((K.restriction e).homologyι j) h) = CategoryTheory.CategoryStruct.comp (K.homologyι j') (CategoryTheory.CategoryStruct.comp (K.restrictionOpcyclesIso e i j hi hi' hj' hi'').inv h) - HomologicalComplex.truncGE'.hasHomology_sc'_of_not_mem_boundary 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (hj : ¬e.BoundaryGE j) : ((K.truncGE' e).sc' i j k).HasHomology - HomologicalComplex.truncGE'.homologyData 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] (i j k : ι) (hk : c.next j = k) {j' : ι'} (hj' : e.f j = j') (hj : e.BoundaryGE j) : ((K.truncGE' e).sc' i j k).HomologyData - HomologicalComplex.truncGE'.homologyData_right_g' 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] (i j k : ι) (hk : c.next j = k) {j' : ι'} (hj' : e.f j = j') (hj : e.BoundaryGE j) : (HomologicalComplex.truncGE'.homologyData K e i j k hk hj' hj).right.g' = (K.truncGE' e).d j k - HomologicalComplex.truncGE.rightHomologyMapData 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] [CategoryTheory.Limits.HasZeroObject C] {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (hj : e.BoundaryGE j) : CategoryTheory.ShortComplex.RightHomologyMapData ((HomologicalComplex.shortComplexFunctor C c' j').map (K.πTruncGE e)) (CategoryTheory.ShortComplex.RightHomologyData.canonical (K.sc j')) (HomologicalComplex.extend.rightHomologyData (K.truncGE' e) e hj' hi ⋯ hk ⋯ (HomologicalComplex.truncGE'.homologyData K e i j k hk hj' hj).right) - HomologicalComplex.truncGE.rightHomologyMapData_φQ 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] [CategoryTheory.Limits.HasZeroObject C] {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (hj : e.BoundaryGE j) : (HomologicalComplex.truncGE.rightHomologyMapData K e hj' hi hk hj).φQ = (K.truncGE'XIsoOpcycles e hj' hj).inv - HomologicalComplex.truncGE'.isLimitKernelFork 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] (j k : ι) (hk : c.next j = k) {j' : ι'} (hj' : e.f j = j') (hj : e.BoundaryGE j) : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι (CategoryTheory.CategoryStruct.comp (K.homologyι j') (K.truncGE'XIsoOpcycles e hj' hj).inv) ⋯) - HomologicalComplex.truncGE.rightHomologyMapData_φH 📋 Mathlib.Algebra.Homology.Embedding.TruncGEHomology
{ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {C : Type u_3} [CategoryTheory.Category.{v_1, u_3} C] [CategoryTheory.Limits.HasZeroMorphisms C] (K : HomologicalComplex C c') (e : c.Embedding c') [e.IsTruncGE] [∀ (i' : ι'), K.HasHomology i'] [CategoryTheory.Limits.HasZeroObject C] {i j k : ι} {j' : ι'} (hj' : e.f j = j') (hi : c.prev j = i) (hk : c.next j = k) (hj : e.BoundaryGE j) : (HomologicalComplex.truncGE.rightHomologyMapData K e hj' hi hk hj).φH = CategoryTheory.CategoryStruct.id (CategoryTheory.ShortComplex.RightHomologyData.canonical (K.sc j')).H - HomologicalComplex.exactAt_iff_exact_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) : K.ExactAt j ↔ ∀ ⦃A : C⦄ (x₂ : A ⟶ K.X j), CategoryTheory.CategoryStruct.comp x₂ (K.d j k) = 0 → ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ x₁, CategoryTheory.CategoryStruct.comp π x₂ = CategoryTheory.CategoryStruct.comp x₁ (K.d i j) - HomologicalComplex.eq_liftCycles_homologyπ_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} (K : HomologicalComplex C c) {A : C} {i : ι} (γ : A ⟶ K.homology i) (j : ι) (hj : c.next i = j) : ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ z, ∃ (hz : CategoryTheory.CategoryStruct.comp z (K.d i j) = 0), CategoryTheory.CategoryStruct.comp π γ = CategoryTheory.CategoryStruct.comp (K.liftCycles z j hj hz) (K.homologyπ i) - HomologicalComplex.mono_homologyMap_iff_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} {K L : HomologicalComplex C c} (φ : K ⟶ L) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) : CategoryTheory.Mono (HomologicalComplex.homologyMap φ j) ↔ ∀ ⦃A : C⦄ (x₂ : A ⟶ K.X j), CategoryTheory.CategoryStruct.comp x₂ (K.d j k) = 0 → ∀ (y₁ : A ⟶ L.X i), CategoryTheory.CategoryStruct.comp x₂ (φ.f j) = CategoryTheory.CategoryStruct.comp y₁ (L.d i j) → ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ x₁, CategoryTheory.CategoryStruct.comp π x₂ = CategoryTheory.CategoryStruct.comp x₁ (K.d i j) - HomologicalComplex.liftCycles_comp_homologyπ_eq_zero_iff_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {A : C} (x₂ : A ⟶ K.X j) (hx₂ : CategoryTheory.CategoryStruct.comp x₂ (K.d j k) = 0) : CategoryTheory.CategoryStruct.comp (K.liftCycles x₂ k hk hx₂) (K.homologyπ j) = 0 ↔ ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ x₁, CategoryTheory.CategoryStruct.comp π x₂ = CategoryTheory.CategoryStruct.comp x₁ (K.d i j) - HomologicalComplex.liftCycles_comp_homologyπ_eq_iff_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) {A : C} (x₂ x₂' : A ⟶ K.X j) (hx₂ : CategoryTheory.CategoryStruct.comp x₂ (K.d j k) = 0) (hx₂' : CategoryTheory.CategoryStruct.comp x₂' (K.d j k) = 0) : CategoryTheory.CategoryStruct.comp (K.liftCycles x₂ k hk hx₂) (K.homologyπ j) = CategoryTheory.CategoryStruct.comp (K.liftCycles x₂' k hk hx₂') (K.homologyπ j) ↔ ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ x₁, CategoryTheory.CategoryStruct.comp π x₂ = CategoryTheory.CategoryStruct.comp π x₂' + CategoryTheory.CategoryStruct.comp x₁ (K.d i j) - HomologicalComplex.epi_homologyMap_iff_up_to_refinements 📋 Mathlib.Algebra.Homology.Refinements
{C : Type u_1} {ι : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {c : ComplexShape ι} {K L : HomologicalComplex C c} (φ : K ⟶ L) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) : CategoryTheory.Epi (HomologicalComplex.homologyMap φ j) ↔ ∀ ⦃A : C⦄ (y₂ : A ⟶ L.X j), CategoryTheory.CategoryStruct.comp y₂ (L.d j k) = 0 → ∃ A' π, ∃ (_ : CategoryTheory.Epi π), ∃ x₂, ∃ (_ : CategoryTheory.CategoryStruct.comp x₂ (K.d j k) = 0), ∃ y₁, CategoryTheory.CategoryStruct.comp π y₂ = CategoryTheory.CategoryStruct.comp x₂ (φ.f j) + CategoryTheory.CategoryStruct.comp y₁ (L.d i j) - HomologicalComplex.alternatingConstHomologyIsoEven 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Even j) : (HomologicalComplex.alternatingConst A hOdd hEven hc).homology j ≅ { X₁ := A, X₂ := A, X₃ := A, f := ψ, g := φ, zero := hEven }.homology - HomologicalComplex.alternatingConstHomologyIsoOdd 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Odd j) : (HomologicalComplex.alternatingConst A hOdd hEven hc).homology j ≅ { X₁ := A, X₂ := A, X₃ := A, f := φ, g := ψ, zero := hOdd }.homology - HomologicalComplex.alternatingConst_iCycles_even_comp 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Even j) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j) φ = 0 - HomologicalComplex.alternatingConst_iCycles_odd_comp 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Odd j) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j) ψ = 0 - HomologicalComplex.alternatingConst_iCycles_even_comp_assoc 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Even j) {Z : C} (h✝ : A ⟶ Z) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j) (CategoryTheory.CategoryStruct.comp φ h✝) = CategoryTheory.CategoryStruct.comp 0 h✝ - HomologicalComplex.alternatingConst_iCycles_odd_comp_assoc 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Odd j) {Z : C} (h✝ : A ⟶ Z) : CategoryTheory.CategoryStruct.comp ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j) (CategoryTheory.CategoryStruct.comp ψ h✝) = CategoryTheory.CategoryStruct.comp 0 h✝ - HomologicalComplex.alternatingConst_iCycles_even_comp_apply 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Even j) {F : C → C → Type uF} {carrier : C → Type w} {instFunLike : (X Y : C) → FunLike (F X Y) (carrier X) (carrier Y)} [inst : CategoryTheory.ConcreteCategory C F] (x : carrier ((HomologicalComplex.alternatingConst A hOdd hEven hc).cycles j)) : (CategoryTheory.ConcreteCategory.hom φ) ((CategoryTheory.ConcreteCategory.hom ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j)) x) = (CategoryTheory.ConcreteCategory.hom 0) x - HomologicalComplex.alternatingConst_iCycles_odd_comp_apply 📋 Mathlib.Algebra.Homology.AlternatingConst
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (A : C) {φ ψ : A ⟶ A} (hOdd : CategoryTheory.CategoryStruct.comp φ ψ = 0) (hEven : CategoryTheory.CategoryStruct.comp ψ φ = 0) {c : ComplexShape ℕ} [DecidableRel c.Rel] (hc : ∀ (i j : ℕ), c.Rel i j → Odd (i + j)) [CategoryTheory.CategoryWithHomology C] {j : ℕ} (hpj : c.Rel (c.prev j) j) (hnj : c.Rel j (c.next j)) (h : Odd j) {F : C → C → Type uF} {carrier : C → Type w} {instFunLike : (X Y : C) → FunLike (F X Y) (carrier X) (carrier Y)} [inst : CategoryTheory.ConcreteCategory C F] (x : carrier ((HomologicalComplex.alternatingConst A hOdd hEven hc).cycles j)) : (CategoryTheory.ConcreteCategory.hom ψ) ((CategoryTheory.ConcreteCategory.hom ((HomologicalComplex.alternatingConst A hOdd hEven hc).iCycles j)) x) = (CategoryTheory.ConcreteCategory.hom 0) x - ComplexShape.next_add 📋 Mathlib.Algebra.Homology.ComplexShapeSigns
{I : Type u_7} [AddMonoid I] (c : ComplexShape I) [c.TensorSigns] (p q : I) (hp : c.Rel p (c.next p)) : c.next (p + q) = c.next p + q - ComplexShape.next_add' 📋 Mathlib.Algebra.Homology.ComplexShapeSigns
{I : Type u_7} [AddMonoid I] (c : ComplexShape I) [c.TensorSigns] (p q : I) (hq : c.Rel q (c.next q)) : c.next (p + q) = p + c.next q - ComplexShape.next_π₁ 📋 Mathlib.Algebra.Homology.ComplexShapeSigns
{I₁ : Type u_1} {I₂ : Type u_2} {I₁₂ : Type u_4} {c₁ : ComplexShape I₁} (c₂ : ComplexShape I₂) (c₁₂ : ComplexShape I₁₂) [TotalComplexShape c₁ c₂ c₁₂] {i₁ i₁' : I₁} (h : c₁.Rel i₁ i₁') (i₂ : I₂) : c₁₂.next (c₁.π c₂ c₁₂ (i₁, i₂)) = c₁.π c₂ c₁₂ (i₁', i₂) - ComplexShape.next_π₂ 📋 Mathlib.Algebra.Homology.ComplexShapeSigns
{I₁ : Type u_1} {I₂ : Type u_2} {I₁₂ : Type u_4} (c₁ : ComplexShape I₁) {c₂ : ComplexShape I₂} (c₁₂ : ComplexShape I₁₂) [TotalComplexShape c₁ c₂ c₁₂] (i₁ : I₁) {i₂ i₂' : I₂} (h : c₂.Rel i₂ i₂') : c₁₂.next (c₁.π c₂ c₁₂ (i₁, i₂)) = c₁.π c₂ c₁₂ (i₁, i₂') - HomologicalComplex₂.d₁_eq_zero 📋 Mathlib.Algebra.Homology.TotalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {I₁ : Type u_2} {I₂ : Type u_3} {I₁₂ : Type u_4} {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} (K : HomologicalComplex₂ C c₁ c₂) (c₁₂ : ComplexShape I₁₂) [TotalComplexShape c₁ c₂ c₁₂] [DecidableEq I₁₂] [K.HasTotal c₁₂] (i₁ : I₁) (i₂ : I₂) (i₁₂ : I₁₂) (h : ¬c₁.Rel i₁ (c₁.next i₁)) : K.d₁ c₁₂ i₁ i₂ i₁₂ = 0 - HomologicalComplex₂.d₂_eq_zero 📋 Mathlib.Algebra.Homology.TotalComplex
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {I₁ : Type u_2} {I₂ : Type u_3} {I₁₂ : Type u_4} {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} (K : HomologicalComplex₂ C c₁ c₂) (c₁₂ : ComplexShape I₁₂) [TotalComplexShape c₁ c₂ c₁₂] [DecidableEq I₁₂] [K.HasTotal c₁₂] (i₁ : I₁) (i₂ : I₂) (i₁₂ : I₁₂) (h : ¬c₂.Rel i₂ (c₂.next i₂)) : K.d₂ c₁₂ i₁ i₂ i₁₂ = 0 - HomologicalComplex.mapBifunctor.d₁_eq_zero 📋 Mathlib.Algebra.Homology.Bifunctor
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] {I₁ : Type u_4} {I₂ : Type u_5} {J : Type u_6} {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Preadditive D] (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F.obj X₁).PreservesZeroMorphisms] (c : ComplexShape J) [TotalComplexShape c₁ c₂ c] [K₁.HasMapBifunctor K₂ F c] [DecidableEq J] (i₁ : I₁) (i₂ : I₂) (j : J) (h : ¬c₁.Rel i₁ (c₁.next i₁)) : HomologicalComplex.mapBifunctor.d₁ K₁ K₂ F c i₁ i₂ j = 0 - HomologicalComplex.mapBifunctor.d₂_eq_zero 📋 Mathlib.Algebra.Homology.Bifunctor
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] {I₁ : Type u_4} {I₂ : Type u_5} {J : Type u_6} {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Preadditive D] (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F.obj X₁).PreservesZeroMorphisms] (c : ComplexShape J) [TotalComplexShape c₁ c₂ c] [K₁.HasMapBifunctor K₂ F c] [DecidableEq J] (i₁ : I₁) (i₂ : I₂) (j : J) (h : ¬c₂.Rel i₂ (c₂.next i₂)) : HomologicalComplex.mapBifunctor.d₂ K₁ K₂ F c i₁ i₂ j = 0 - HomologicalComplex.mapBifunctor₁₂.d₁_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₁₂ : Type u_3} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_5, u_3} C₁₂] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₁₂] [CategoryTheory.Preadditive C₄] (F₁₂ : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ C₁₂)) (G : CategoryTheory.Functor C₁₂ (CategoryTheory.Functor C₃ C₄)) [F₁₂.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F₁₂.obj X₁).PreservesZeroMorphisms] [G.Additive] [∀ (X₁₂ : C₁₂), (G.obj X₁₂).PreservesZeroMorphisms] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [K₁.HasMapBifunctor K₂ F₁₂ c₁₂] [DecidableEq ι₁₂] [(K₁.mapBifunctor K₂ F₁₂ c₁₂).HasMapBifunctor K₃ G c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₁.Rel i₁ (c₁.next i₁)) : HomologicalComplex.mapBifunctor₁₂.d₁ F₁₂ G K₁ K₂ K₃ c₁₂ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctor₁₂.d₂_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₁₂ : Type u_3} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_5, u_3} C₁₂] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₁₂] [CategoryTheory.Preadditive C₄] (F₁₂ : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ C₁₂)) (G : CategoryTheory.Functor C₁₂ (CategoryTheory.Functor C₃ C₄)) [F₁₂.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F₁₂.obj X₁).PreservesZeroMorphisms] [G.Additive] [∀ (X₁₂ : C₁₂), (G.obj X₁₂).PreservesZeroMorphisms] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [K₁.HasMapBifunctor K₂ F₁₂ c₁₂] [DecidableEq ι₁₂] [(K₁.mapBifunctor K₂ F₁₂ c₁₂).HasMapBifunctor K₃ G c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₂.Rel i₂ (c₂.next i₂)) : HomologicalComplex.mapBifunctor₁₂.d₂ F₁₂ G K₁ K₂ K₃ c₁₂ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctor₁₂.d₃_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₁₂ : Type u_3} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_5, u_3} C₁₂] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₁₂] [CategoryTheory.Preadditive C₄] (F₁₂ : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ C₁₂)) (G : CategoryTheory.Functor C₁₂ (CategoryTheory.Functor C₃ C₄)) [F₁₂.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F₁₂.obj X₁).PreservesZeroMorphisms] [G.Additive] [∀ (X₁₂ : C₁₂), (G.obj X₁₂).PreservesZeroMorphisms] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [K₁.HasMapBifunctor K₂ F₁₂ c₁₂] [DecidableEq ι₁₂] [(K₁.mapBifunctor K₂ F₁₂ c₁₂).HasMapBifunctor K₃ G c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₃.Rel i₃ (c₃.next i₃)) : HomologicalComplex.mapBifunctor₁₂.d₃ F₁₂ G K₁ K₂ K₃ c₁₂ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctor₂₃.d₁_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₂₃ : Type u_4} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_6, u_4} C₂₃] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₂₃] [CategoryTheory.Preadditive C₄] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂₃ C₄)) (G₂₃ : CategoryTheory.Functor C₂ (CategoryTheory.Functor C₃ C₂₃)) [G₂₃.PreservesZeroMorphisms] [∀ (X₂ : C₂), (G₂₃.obj X₂).PreservesZeroMorphisms] [F.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F.obj X₁).Additive] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₂₃ : Type u_11} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₂₃ : ComplexShape ι₂₃) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [TotalComplexShape c₂ c₃ c₂₃] [TotalComplexShape c₁ c₂₃ c₄] [K₂.HasMapBifunctor K₃ G₂₃ c₂₃] [c₁.Associative c₂ c₃ c₁₂ c₂₃ c₄] [DecidableEq ι₂₃] [K₁.HasMapBifunctor (K₂.mapBifunctor K₃ G₂₃ c₂₃) F c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₁.Rel i₁ (c₁.next i₁)) : HomologicalComplex.mapBifunctor₂₃.d₁ F G₂₃ K₁ K₂ K₃ c₁₂ c₂₃ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctor₂₃.d₂_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₂₃ : Type u_4} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_6, u_4} C₂₃] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₂₃] [CategoryTheory.Preadditive C₄] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂₃ C₄)) (G₂₃ : CategoryTheory.Functor C₂ (CategoryTheory.Functor C₃ C₂₃)) [G₂₃.PreservesZeroMorphisms] [∀ (X₂ : C₂), (G₂₃.obj X₂).PreservesZeroMorphisms] [F.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F.obj X₁).Additive] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₂₃ : Type u_11} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₂₃ : ComplexShape ι₂₃) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [TotalComplexShape c₂ c₃ c₂₃] [TotalComplexShape c₁ c₂₃ c₄] [K₂.HasMapBifunctor K₃ G₂₃ c₂₃] [c₁.Associative c₂ c₃ c₁₂ c₂₃ c₄] [DecidableEq ι₂₃] [K₁.HasMapBifunctor (K₂.mapBifunctor K₃ G₂₃ c₂₃) F c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₂.Rel i₂ (c₂.next i₂)) : HomologicalComplex.mapBifunctor₂₃.d₂ F G₂₃ K₁ K₂ K₃ c₁₂ c₂₃ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctor₂₃.d₃_eq_zero 📋 Mathlib.Algebra.Homology.BifunctorAssociator
{C₁ : Type u_1} {C₂ : Type u_2} {C₂₃ : Type u_4} {C₃ : Type u_5} {C₄ : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_5} C₃] [CategoryTheory.Category.{v_4, u_6} C₄] [CategoryTheory.Category.{v_6, u_4} C₂₃] [CategoryTheory.Limits.HasZeroMorphisms C₁] [CategoryTheory.Limits.HasZeroMorphisms C₂] [CategoryTheory.Limits.HasZeroMorphisms C₃] [CategoryTheory.Preadditive C₂₃] [CategoryTheory.Preadditive C₄] (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂₃ C₄)) (G₂₃ : CategoryTheory.Functor C₂ (CategoryTheory.Functor C₃ C₂₃)) [G₂₃.PreservesZeroMorphisms] [∀ (X₂ : C₂), (G₂₃.obj X₂).PreservesZeroMorphisms] [F.PreservesZeroMorphisms] [∀ (X₁ : C₁), (F.obj X₁).Additive] {ι₁ : Type u_7} {ι₂ : Type u_8} {ι₃ : Type u_9} {ι₁₂ : Type u_10} {ι₂₃ : Type u_11} {ι₄ : Type u_12} [DecidableEq ι₄] {c₁ : ComplexShape ι₁} {c₂ : ComplexShape ι₂} {c₃ : ComplexShape ι₃} (K₁ : HomologicalComplex C₁ c₁) (K₂ : HomologicalComplex C₂ c₂) (K₃ : HomologicalComplex C₃ c₃) (c₁₂ : ComplexShape ι₁₂) (c₂₃ : ComplexShape ι₂₃) (c₄ : ComplexShape ι₄) [TotalComplexShape c₁ c₂ c₁₂] [TotalComplexShape c₁₂ c₃ c₄] [TotalComplexShape c₂ c₃ c₂₃] [TotalComplexShape c₁ c₂₃ c₄] [K₂.HasMapBifunctor K₃ G₂₃ c₂₃] [c₁.Associative c₂ c₃ c₁₂ c₂₃ c₄] [DecidableEq ι₂₃] [K₁.HasMapBifunctor (K₂.mapBifunctor K₃ G₂₃ c₂₃) F c₄] (i₁ : ι₁) (i₂ : ι₂) (i₃ : ι₃) (j : ι₄) (h : ¬c₃.Rel i₃ (c₃.next i₃)) : HomologicalComplex.mapBifunctor₂₃.d₃ F G₂₃ K₁ K₂ K₃ c₁₂ c₂₃ c₄ i₁ i₂ i₃ j = 0 - HomologicalComplex.mapBifunctorMapHomotopy.comm₁ 📋 Mathlib.Algebra.Homology.BifunctorHomotopy
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} {I₁ : Type u_4} {I₂ : Type u_5} {J : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} {K₁ L₁ : HomologicalComplex C₁ c₁} {f₁ f₁' : K₁ ⟶ L₁} (h₁ : Homotopy f₁ f₁') {K₂ L₂ : HomologicalComplex C₂ c₂} (f₂ : K₂ ⟶ L₂) (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] (c : ComplexShape J) [DecidableEq J] [TotalComplexShape c₁ c₂ c] [K₁.HasMapBifunctor K₂ F c] [L₁.HasMapBifunctor L₂ F c] (j : J) : (HomologicalComplex.mapBifunctorMap f₁ f₂ F c).f j = CategoryTheory.CategoryStruct.comp ((K₁.mapBifunctor K₂ F c).d j (c.next j)) (HomologicalComplex.mapBifunctorMapHomotopy.hom₁ h₁ f₂ F c (c.next j) j) + CategoryTheory.CategoryStruct.comp (HomologicalComplex.mapBifunctorMapHomotopy.hom₁ h₁ f₂ F c j (c.prev j)) ((L₁.mapBifunctor L₂ F c).d (c.prev j) j) + (HomologicalComplex.mapBifunctorMap f₁' f₂ F c).f j - HomologicalComplex.mapBifunctorMapHomotopy.comm₁_aux 📋 Mathlib.Algebra.Homology.BifunctorHomotopy
{C₁ : Type u_1} {C₂ : Type u_2} {D : Type u_3} {I₁ : Type u_4} {I₂ : Type u_5} {J : Type u_6} [CategoryTheory.Category.{v_1, u_1} C₁] [CategoryTheory.Category.{v_2, u_2} C₂] [CategoryTheory.Category.{v_3, u_3} D] [CategoryTheory.Preadditive C₁] [CategoryTheory.Preadditive C₂] [CategoryTheory.Preadditive D] {c₁ : ComplexShape I₁} {c₂ : ComplexShape I₂} {K₁ L₁ : HomologicalComplex C₁ c₁} {f₁ f₁' : K₁ ⟶ L₁} (h₁ : Homotopy f₁ f₁') {K₂ L₂ : HomologicalComplex C₂ c₂} (f₂ : K₂ ⟶ L₂) (F : CategoryTheory.Functor C₁ (CategoryTheory.Functor C₂ D)) [F.Additive] [∀ (X₁ : C₁), (F.obj X₁).Additive] (c : ComplexShape J) [DecidableEq J] [TotalComplexShape c₁ c₂ c] [K₁.HasMapBifunctor K₂ F c] [L₁.HasMapBifunctor L₂ F c] {i₁ i₁' : I₁} (hi₁ : c₁.Rel i₁ i₁') {i₂ i₂' : I₂} (hi₂ : c₂.Rel i₂ i₂') (j : J) (hj : c₁.π c₂ c (i₁', i₂) = j) : c₁.ε₁ c₂ c (i₁, i₂) • CategoryTheory.CategoryStruct.comp ((F.map (h₁.hom i₁' i₁)).app (K₂.X i₂)) (CategoryTheory.CategoryStruct.comp ((F.obj (L₁.X i₁)).map (f₂.f i₂)) ((((F.mapBifunctorHomologicalComplex c₁ c₂).obj L₁).obj L₂).d₂ c i₁ i₂ j)) = -CategoryTheory.CategoryStruct.comp ((((F.mapBifunctorHomologicalComplex c₁ c₂).obj K₁).obj K₂).d₂ c i₁' i₂ (c.next j)) (HomologicalComplex.mapBifunctorMapHomotopy.hom₁ h₁ f₂ F c (c.next j) j) - HomologicalComplex.cyclesMk 📋 Mathlib.Algebra.Homology.ConcreteCategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type v} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] [CategoryTheory.HasForget₂ C Ab] [CategoryTheory.Abelian C] [(CategoryTheory.forget₂ C Ab).Additive] [(CategoryTheory.forget₂ C Ab).PreservesHomology] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} (x : ↑((CategoryTheory.forget₂ C Ab).obj (K.X i))) (j : ι) (hj : c.next i = j) (hx : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (K.d i j))) x = 0) : ↑((CategoryTheory.forget₂ C Ab).obj (K.cycles i)) - HomologicalComplex.i_cyclesMk 📋 Mathlib.Algebra.Homology.ConcreteCategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type v} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] [CategoryTheory.HasForget₂ C Ab] [CategoryTheory.Abelian C] [(CategoryTheory.forget₂ C Ab).Additive] [(CategoryTheory.forget₂ C Ab).PreservesHomology] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} (x : ↑((CategoryTheory.forget₂ C Ab).obj (K.X i))) (j : ι) (hj : c.next i = j) (hx : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (K.d i j))) x = 0) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (K.iCycles i))) (K.cyclesMk x j hj hx) = x - CategoryTheory.ShortComplex.ShortExact.δ_apply 📋 Mathlib.Algebra.Homology.ConcreteCategory
{C : Type u} [CategoryTheory.Category.{v, u} C] {FC : C → C → Type u_1} {CC : C → Type v} [(X Y : C) → FunLike (FC X Y) (CC X) (CC Y)] [CategoryTheory.ConcreteCategory C FC] [CategoryTheory.HasForget₂ C Ab] [CategoryTheory.Abelian C] [(CategoryTheory.forget₂ C Ab).Additive] [(CategoryTheory.forget₂ C Ab).PreservesHomology] {ι : Type u_2} {c : ComplexShape ι} {S : CategoryTheory.ShortComplex (HomologicalComplex C c)} (hS : S.ShortExact) (i j : ι) (hij : c.Rel i j) (x₃ : ↑((CategoryTheory.forget₂ C Ab).obj (S.X₃.X i))) (hx₃ : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.X₃.d i j))) x₃ = 0) (x₂ : ↑((CategoryTheory.forget₂ C Ab).obj (S.X₂.X i))) (hx₂ : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.g.f i))) x₂ = x₃) (x₁ : ↑((CategoryTheory.forget₂ C Ab).obj (S.X₁.X j))) (hx₁ : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.f.f j))) x₁ = (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.X₂.d i j))) x₂) (k : ι) (hk : c.next j = k) : (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (hS.δ i j hij))) ((CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.X₃.homologyπ i))) (S.X₃.cyclesMk x₃ j ⋯ hx₃)) = (CategoryTheory.ConcreteCategory.hom ((CategoryTheory.forget₂ C Ab).map (S.X₁.homologyπ j))) (S.X₁.cyclesMk x₁ k hk ⋯) - HomologicalComplex.quasiIsoAt_π_of_isLimit_of_isEventuallyConstantTo 📋 Mathlib.Algebra.Homology.HomologicalComplexLimitsEventuallyConstant
{C : Type u_1} {J : Type u_2} {ι : Type u_3} [CategoryTheory.Category.{u_4, u_1} C] [CategoryTheory.Category.{u_5, u_2} J] {c : ComplexShape ι} [CategoryTheory.IsCofiltered J] [CategoryTheory.Limits.HasZeroMorphisms C] (F : CategoryTheory.Functor J (HomologicalComplex C c)) [∀ (j : ι), CategoryTheory.Limits.HasLimit (F.comp (HomologicalComplex.eval C c j))] {cF : CategoryTheory.Limits.Cone F} (hcF : CategoryTheory.Limits.IsLimit cF) [CategoryTheory.CategoryWithHomology C] (q₀ q₁ q₂ : ι) (h₀ : c.prev q₁ = q₀) (h₂ : c.next q₁ = q₂) (j : J) (hq₀ : (F.comp (HomologicalComplex.eval C c q₀)).IsEventuallyConstantTo j) (hq₁ : (F.comp (HomologicalComplex.eval C c q₁)).IsEventuallyConstantTo j) (hq₂ : (F.comp (HomologicalComplex.eval C c q₂)).IsEventuallyConstantTo j) : QuasiIsoAt (cF.π.app j) q₁ - CategoryTheory.Abelian.SpectralObject.SpectralSequence.HomologyData.kfSc_exact 📋 Mathlib.Algebra.Homology.SpectralObject.SpectralSequence
{C : Type u_1} {ι : Type u_2} {κ : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] [Preorder ι] (X : CategoryTheory.Abelian.SpectralObject C ι) {c : ℤ → ComplexShape κ} {r₀ : ℤ} (data : CategoryTheory.Abelian.SpectralObject.SpectralSequenceDataCore ι c r₀) (r r' : ℤ) (hrr' : r + 1 = r') (hr : r₀ ≤ r) (pq' pq'' : κ) (hpq' : (c r).next pq' = pq'') (i₀' i₀ i₁ i₂ i₃ : ι) (hi₀' : i₀' = data.i₀ r' pq' ⋯) (hi₀ : i₀ = data.i₀ r pq' ⋯) (hi₁ : i₁ = data.i₁ pq') (hi₂ : i₂ = data.i₂ pq') (hi₃ : i₃ = data.i₃ r pq' ⋯) (n₀ n₁ n₂ : ℤ) (hn₁' : n₁ = data.deg pq') [X.HasSpectralSequence data] (hn₁ : n₀ + 1 = n₁ := by lia) (hn₂ : n₁ + 1 = n₂ := by lia) : (CategoryTheory.Abelian.SpectralObject.SpectralSequence.HomologyData.kfSc X data r r' hrr' hr pq' pq'' i₀' i₀ i₁ i₂ i₃ hi₀' hi₀ hi₁ hi₂ hi₃ n₀ n₁ n₂ hn₁' hn₁ hn₂).Exact - CategoryTheory.Abelian.SpectralObject.SpectralSequence.homologyData 📋 Mathlib.Algebra.Homology.SpectralObject.SpectralSequence
{C : Type u_1} {ι : Type u_2} {κ : Type u_3} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] [Preorder ι] (X : CategoryTheory.Abelian.SpectralObject C ι) {c : ℤ → ComplexShape κ} {r₀ : ℤ} (data : CategoryTheory.Abelian.SpectralObject.SpectralSequenceDataCore ι c r₀) (r r' : ℤ) (hrr' : r + 1 = r') (hr : r₀ ≤ r) (pq pq' pq'' : κ) (hpq : (c r).prev pq' = pq) (hpq' : (c r).next pq' = pq'') (i₀' i₀ i₁ i₂ i₃ i₃' : ι) (hi₀' : i₀' = data.i₀ r' pq' ⋯) (hi₀ : i₀ = data.i₀ r pq' ⋯) (hi₁ : i₁ = data.i₁ pq') (hi₂ : i₂ = data.i₂ pq') (hi₃ : i₃ = data.i₃ r pq' ⋯) (hi₃' : i₃' = data.i₃ r' pq' ⋯) (n₀ n₁ n₂ : ℤ) (hn₁' : n₁ = data.deg pq') [X.HasSpectralSequence data] (hn₁ : n₀ + 1 = n₁ := by lia) (hn₂ : n₁ + 1 = n₂ := by lia) : ((CategoryTheory.Abelian.SpectralObject.SpectralSequence.page X data r hr).sc' pq pq' pq'').HomologyData
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 ce5dd8c