Loogle!
Result
Found 164 declarations mentioning CategoryTheory.ShortComplex.HasRightHomology.
- CategoryTheory.ShortComplex.HasRightHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) : Prop - CategoryTheory.ShortComplex.opcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : C - CategoryTheory.ShortComplex.rightHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : C - CategoryTheory.ShortComplex.rightHomologyData 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.RightHomologyData - CategoryTheory.ShortComplex.HasRightHomology.mk' 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) : S.HasRightHomology - CategoryTheory.ShortComplex.HasRightHomology.condition 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} {inst✝ : CategoryTheory.Category.{v_1, u_1} C} {inst✝¹ : CategoryTheory.Limits.HasZeroMorphisms C} {S : CategoryTheory.ShortComplex C} [self : S.HasRightHomology] : Nonempty S.RightHomologyData - CategoryTheory.ShortComplex.HasRightHomology.mk 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (condition : Nonempty S.RightHomologyData) : S.HasRightHomology - CategoryTheory.ShortComplex.instHasLeftHomologyOppositeOpOfHasRightHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [S.HasRightHomology] : S.op.HasLeftHomology - CategoryTheory.ShortComplex.instHasRightHomologyOppositeOpOfHasLeftHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [S.HasLeftHomology] : S.op.HasRightHomology - CategoryTheory.ShortComplex.hasLeftHomology_iff_op 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) : S.HasLeftHomology ↔ S.op.HasRightHomology - CategoryTheory.ShortComplex.hasRightHomology_iff_op 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) : S.HasRightHomology ↔ S.op.HasLeftHomology - CategoryTheory.ShortComplex.fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.opcycles ⟶ S.X₃ - CategoryTheory.ShortComplex.pOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.X₂ ⟶ S.opcycles - CategoryTheory.ShortComplex.rightHomologyData_H 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.rightHomologyData.H = S.rightHomology - CategoryTheory.ShortComplex.rightHomologyι 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.rightHomology ⟶ S.opcycles - CategoryTheory.ShortComplex.HasRightHomology.hasCokernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.Limits.HasCokernel S.f - CategoryTheory.ShortComplex.hasRightHomology_of_iso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] : S₂.HasRightHomology - CategoryTheory.ShortComplex.instEpiPOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.Epi S.pOpcycles - CategoryTheory.ShortComplex.RightHomologyData.opcyclesIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : S.opcycles ≅ h.Q - CategoryTheory.ShortComplex.RightHomologyData.rightHomologyIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : S.rightHomology ≅ h.H - CategoryTheory.ShortComplex.instMonoRightHomologyι 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.Mono S.rightHomologyι - CategoryTheory.ShortComplex.hasLeftHomology_iff_unop 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex Cᵒᵖ) : S.HasLeftHomology ↔ S.unop.HasRightHomology - CategoryTheory.ShortComplex.hasRightHomology_iff_unop 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex Cᵒᵖ) : S.HasRightHomology ↔ S.unop.HasLeftHomology - CategoryTheory.ShortComplex.cyclesOpIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.op.cycles ≅ Opposite.op S.opcycles - CategoryTheory.ShortComplex.leftHomologyOpIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : S.op.leftHomology ≅ Opposite.op S.rightHomology - CategoryTheory.ShortComplex.opcyclesMapIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : S₁.opcycles ≅ S₂.opcycles - CategoryTheory.ShortComplex.rightHomologyMapIso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : S₁.rightHomology ≅ S₂.rightHomology - CategoryTheory.ShortComplex.opcyclesIsoCokernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] [CategoryTheory.Limits.HasCokernel S.f] : S.opcycles ≅ CategoryTheory.Limits.cokernel S.f - CategoryTheory.ShortComplex.opcyclesMap 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) : S₁.opcycles ⟶ S₂.opcycles - CategoryTheory.ShortComplex.rightHomologyMap 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) : S₁.rightHomology ⟶ S₂.rightHomology - CategoryTheory.ShortComplex.opcyclesMap_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap (CategoryTheory.CategoryStruct.id S) = CategoryTheory.CategoryStruct.id S.opcycles - CategoryTheory.ShortComplex.rightHomologyMap_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap (CategoryTheory.CategoryStruct.id S) = CategoryTheory.CategoryStruct.id S.rightHomology - CategoryTheory.ShortComplex.p_fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.pOpcycles S.fromOpcycles = S.g - CategoryTheory.ShortComplex.HasRightHomology.of_hasCokernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {X Y : C} (f : X ⟶ Y) (Z : C) [CategoryTheory.Limits.HasCokernel f] : { X₁ := X, X₂ := Y, X₃ := Z, f := f, g := 0, zero := ⋯ }.HasRightHomology - CategoryTheory.ShortComplex.HasRightHomology.of_hasKernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {Y Z : C} (g : Y ⟶ Z) (X : C) [CategoryTheory.Limits.HasKernel g] : { X₁ := X, X₂ := Y, X₃ := Z, f := 0, g := g, zero := ⋯ }.HasRightHomology - CategoryTheory.ShortComplex.isIso_opcyclesMap_of_iso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [CategoryTheory.IsIso φ] [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.IsIso (CategoryTheory.ShortComplex.opcyclesMap φ) - CategoryTheory.ShortComplex.isIso_rightHomologyMap_of_iso 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [CategoryTheory.IsIso φ] [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.IsIso (CategoryTheory.ShortComplex.rightHomologyMap φ) - CategoryTheory.ShortComplex.RightHomologyData.pOpcycles_comp_opcyclesIso_hom 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.pOpcycles h.opcyclesIso.hom = h.p - CategoryTheory.ShortComplex.RightHomologyData.p_comp_opcyclesIso_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp h.p h.opcyclesIso.inv = S.pOpcycles - CategoryTheory.ShortComplex.HasRightHomology.hasKernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] [CategoryTheory.Limits.HasCokernel S.f] : CategoryTheory.Limits.HasKernel (CategoryTheory.Limits.cokernel.desc S.f S.g ⋯) - CategoryTheory.ShortComplex.HasRightHomology.of_hasCokernel_of_hasKernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [CategoryTheory.Limits.HasCokernel S.f] [CategoryTheory.Limits.HasKernel (CategoryTheory.Limits.cokernel.desc S.f S.g ⋯)] : S.HasRightHomology - CategoryTheory.ShortComplex.opcyclesMapIso_hom 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : (CategoryTheory.ShortComplex.opcyclesMapIso e).hom = CategoryTheory.ShortComplex.opcyclesMap e.hom - CategoryTheory.ShortComplex.opcyclesMapIso_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : (CategoryTheory.ShortComplex.opcyclesMapIso e).inv = CategoryTheory.ShortComplex.opcyclesMap e.inv - CategoryTheory.ShortComplex.rightHomologyMapIso_hom 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : (CategoryTheory.ShortComplex.rightHomologyMapIso e).hom = CategoryTheory.ShortComplex.rightHomologyMap e.hom - CategoryTheory.ShortComplex.rightHomologyMapIso_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (e : S₁ ≅ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : (CategoryTheory.ShortComplex.rightHomologyMapIso e).inv = CategoryTheory.ShortComplex.rightHomologyMap e.inv - CategoryTheory.ShortComplex.opcyclesIsoX₂ 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) : S.opcycles ≅ S.X₂ - CategoryTheory.ShortComplex.opcyclesIsoRightHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) : S.opcycles ≅ S.rightHomology - CategoryTheory.ShortComplex.hasRightHomology_of_epi_of_isIso_of_mono 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [CategoryTheory.Epi φ.τ₁] [CategoryTheory.IsIso φ.τ₂] [CategoryTheory.Mono φ.τ₃] : S₂.HasRightHomology - CategoryTheory.ShortComplex.hasRightHomology_of_epi_of_isIso_of_mono' 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₂.HasRightHomology] [CategoryTheory.Epi φ.τ₁] [CategoryTheory.IsIso φ.τ₂] [CategoryTheory.Mono φ.τ₃] : S₁.HasRightHomology - CategoryTheory.ShortComplex.HasRightHomology.of_zeros 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (X Y Z : C) : { X₁ := X, X₂ := Y, X₃ := Z, f := 0, g := 0, zero := ⋯ }.HasRightHomology - CategoryTheory.ShortComplex.isIso_opcyclesMap_of_isIso_of_epi 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [CategoryTheory.IsIso φ.τ₂] [CategoryTheory.Epi φ.τ₁] [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.IsIso (CategoryTheory.ShortComplex.opcyclesMap φ) - CategoryTheory.ShortComplex.isIso_opcyclesMap_of_isIso_of_epi' 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (h₂ : CategoryTheory.IsIso φ.τ₂) (h₁ : CategoryTheory.Epi φ.τ₁) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.IsIso (CategoryTheory.ShortComplex.opcyclesMap φ) - CategoryTheory.ShortComplex.isIso_pOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) : CategoryTheory.IsIso S.pOpcycles - CategoryTheory.ShortComplex.isIso_rightHomologyι 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) : CategoryTheory.IsIso S.rightHomologyι - CategoryTheory.ShortComplex.p_fromOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {Z : C} (h : S.X₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp S.pOpcycles (CategoryTheory.CategoryStruct.comp S.fromOpcycles h) = CategoryTheory.CategoryStruct.comp S.g h - CategoryTheory.ShortComplex.descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] : S.opcycles ⟶ A - CategoryTheory.ShortComplex.descRightHomology 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] : S.rightHomology ⟶ A - CategoryTheory.ShortComplex.f_pOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.f S.pOpcycles = 0 - CategoryTheory.ShortComplex.rightHomologyι_comp_fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.rightHomologyι S.fromOpcycles = 0 - CategoryTheory.ShortComplex.opcycles_ext 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {A : C} (f₁ f₂ : S.opcycles ⟶ A) (h : CategoryTheory.CategoryStruct.comp S.pOpcycles f₁ = CategoryTheory.CategoryStruct.comp S.pOpcycles f₂) : f₁ = f₂ - CategoryTheory.ShortComplex.opcycles_ext_iff 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {A : C} (f₁ f₂ : S.opcycles ⟶ A) : f₁ = f₂ ↔ CategoryTheory.CategoryStruct.comp S.pOpcycles f₁ = CategoryTheory.CategoryStruct.comp S.pOpcycles f₂ - CategoryTheory.ShortComplex.opcyclesIsCokernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.Limits.IsColimit (CategoryTheory.Limits.CokernelCofork.ofπ S.pOpcycles ⋯) - CategoryTheory.ShortComplex.rightHomology_ext 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {A : C} (f₁ f₂ : A ⟶ S.rightHomology) (h : CategoryTheory.CategoryStruct.comp f₁ S.rightHomologyι = CategoryTheory.CategoryStruct.comp f₂ S.rightHomologyι) : f₁ = f₂ - CategoryTheory.ShortComplex.rightHomology_ext_iff 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {A : C} (f₁ f₂ : A ⟶ S.rightHomology) : f₁ = f₂ ↔ CategoryTheory.CategoryStruct.comp f₁ S.rightHomologyι = CategoryTheory.CategoryStruct.comp f₂ S.rightHomologyι - CategoryTheory.ShortComplex.instIsIsoRightHomologyMapOfEpiτ₁Ofτ₂OfMonoτ₃ 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] [CategoryTheory.Epi φ.τ₁] [CategoryTheory.IsIso φ.τ₂] [CategoryTheory.Mono φ.τ₃] : CategoryTheory.IsIso (CategoryTheory.ShortComplex.rightHomologyMap φ) - CategoryTheory.ShortComplex.rightHomologyIsKernel 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι S.rightHomologyι ⋯) - CategoryTheory.ShortComplex.fromOpcycles_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) S₂.fromOpcycles = CategoryTheory.CategoryStruct.comp S₁.fromOpcycles φ.τ₃ - CategoryTheory.ShortComplex.opcyclesIsoX₂_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) : (S.opcyclesIsoX₂ hf).inv = S.pOpcycles - CategoryTheory.ShortComplex.p_opcyclesMap 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) : CategoryTheory.CategoryStruct.comp S₁.pOpcycles (CategoryTheory.ShortComplex.opcyclesMap φ) = CategoryTheory.CategoryStruct.comp φ.τ₂ S₂.pOpcycles - CategoryTheory.ShortComplex.opcyclesIsoRightHomology_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) : (S.opcyclesIsoRightHomology hg).inv = S.rightHomologyι - CategoryTheory.ShortComplex.RightHomologyData.pOpcycles_comp_opcyclesIso_hom_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] {Z : C} (h✝ : h.Q ⟶ Z) : CategoryTheory.CategoryStruct.comp S.pOpcycles (CategoryTheory.CategoryStruct.comp h.opcyclesIso.hom h✝) = CategoryTheory.CategoryStruct.comp h.p h✝ - CategoryTheory.ShortComplex.RightHomologyData.p_comp_opcyclesIso_inv_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] {Z : C} (h✝ : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp h.p (CategoryTheory.CategoryStruct.comp h.opcyclesIso.inv h✝) = CategoryTheory.CategoryStruct.comp S.pOpcycles h✝ - CategoryTheory.ShortComplex.rightHomologyι_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap φ) S₂.rightHomologyι = CategoryTheory.CategoryStruct.comp S₁.rightHomologyι (CategoryTheory.ShortComplex.opcyclesMap φ) - CategoryTheory.ShortComplex.opcyclesIsoCokernel_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] [CategoryTheory.Limits.HasCokernel S.f] : S.opcyclesIsoCokernel.inv = CategoryTheory.Limits.cokernel.desc S.f S.pOpcycles ⋯ - CategoryTheory.ShortComplex.RightHomologyData.rightHomologyIso_hom_comp_ι 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp h.rightHomologyIso.hom h.ι = CategoryTheory.CategoryStruct.comp S.rightHomologyι h.opcyclesIso.hom - CategoryTheory.ShortComplex.RightHomologyData.rightHomologyIso_inv_comp_rightHomologyι 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp h.rightHomologyIso.inv S.rightHomologyι = CategoryTheory.CategoryStruct.comp h.ι h.opcyclesIso.inv - CategoryTheory.ShortComplex.p_descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.pOpcycles (S.descOpcycles k hk) = k - CategoryTheory.ShortComplex.opcyclesIsoCokernel_hom 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] [CategoryTheory.Limits.HasCokernel S.f] : S.opcyclesIsoCokernel.hom = S.descOpcycles (CategoryTheory.Limits.cokernel.π S.f) ⋯ - CategoryTheory.ShortComplex.opcyclesMap_zero 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S₁ S₂ : CategoryTheory.ShortComplex C) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap 0 = 0 - CategoryTheory.ShortComplex.rightHomologyMap_zero 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S₁ S₂ : CategoryTheory.ShortComplex C) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap 0 = 0 - CategoryTheory.ShortComplex.f_pOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {Z : C} (h : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp S.f (CategoryTheory.CategoryStruct.comp S.pOpcycles h) = CategoryTheory.CategoryStruct.comp 0 h - CategoryTheory.ShortComplex.opcyclesMap_comp 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] [S₃.HasRightHomology] (φ₁ : S₁ ⟶ S₂) (φ₂ : S₂ ⟶ S₃) : CategoryTheory.ShortComplex.opcyclesMap (CategoryTheory.CategoryStruct.comp φ₁ φ₂) = CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ₁) (CategoryTheory.ShortComplex.opcyclesMap φ₂) - CategoryTheory.ShortComplex.rightHomologyMap_comp 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] [S₃.HasRightHomology] (φ₁ : S₁ ⟶ S₂) (φ₂ : S₂ ⟶ S₃) : CategoryTheory.ShortComplex.rightHomologyMap (CategoryTheory.CategoryStruct.comp φ₁ φ₂) = CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap φ₁) (CategoryTheory.ShortComplex.rightHomologyMap φ₂) - CategoryTheory.ShortComplex.rightHomologyι_comp_fromOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {Z : C} (h : S.X₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp S.rightHomologyι (CategoryTheory.CategoryStruct.comp S.fromOpcycles h) = CategoryTheory.CategoryStruct.comp 0 h - CategoryTheory.ShortComplex.opcyclesIsoX₂_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) : CategoryTheory.CategoryStruct.comp S.pOpcycles (S.opcyclesIsoX₂ hf).hom = CategoryTheory.CategoryStruct.id S.X₂ - CategoryTheory.ShortComplex.opcyclesIsoX₂_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) : CategoryTheory.CategoryStruct.comp (S.opcyclesIsoX₂ hf).hom S.pOpcycles = CategoryTheory.CategoryStruct.id S.opcycles - CategoryTheory.ShortComplex.opcyclesIsoRightHomology_hom_inv_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) : CategoryTheory.CategoryStruct.comp (S.opcyclesIsoRightHomology hg).hom S.rightHomologyι = CategoryTheory.CategoryStruct.id S.opcycles - CategoryTheory.ShortComplex.opcyclesIsoRightHomology_inv_hom_id 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) : CategoryTheory.CategoryStruct.comp S.rightHomologyι (S.opcyclesIsoRightHomology hg).hom = CategoryTheory.CategoryStruct.id S.rightHomology - CategoryTheory.ShortComplex.fromOpcycles_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) {Z : C} (h : S₂.X₃ ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) (CategoryTheory.CategoryStruct.comp S₂.fromOpcycles h) = CategoryTheory.CategoryStruct.comp S₁.fromOpcycles (CategoryTheory.CategoryStruct.comp φ.τ₃ h) - CategoryTheory.ShortComplex.p_opcyclesMap_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) {Z : C} (h : S₂.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp S₁.pOpcycles (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) h) = CategoryTheory.CategoryStruct.comp φ.τ₂ (CategoryTheory.CategoryStruct.comp S₂.pOpcycles h) - CategoryTheory.ShortComplex.rightHomologyIsoKernelDesc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] [CategoryTheory.Limits.HasCokernel S.f] [CategoryTheory.Limits.HasKernel (CategoryTheory.Limits.cokernel.desc S.f S.g ⋯)] : S.rightHomology ≅ CategoryTheory.Limits.kernel (CategoryTheory.Limits.cokernel.desc S.f S.g ⋯) - CategoryTheory.ShortComplex.rightHomologyι_descOpcycles_π_eq_zero_of_boundary 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) [S.HasRightHomology] (x : S.X₃ ⟶ A) (hx : k = CategoryTheory.CategoryStruct.comp S.g x) : CategoryTheory.CategoryStruct.comp S.rightHomologyι (S.descOpcycles k ⋯) = 0 - CategoryTheory.ShortComplex.rightHomologyι_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} [S₁.HasRightHomology] [S₂.HasRightHomology] (φ : S₁ ⟶ S₂) {Z : C} (h : S₂.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap φ) (CategoryTheory.CategoryStruct.comp S₂.rightHomologyι h) = CategoryTheory.CategoryStruct.comp S₁.rightHomologyι (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) h) - CategoryTheory.ShortComplex.opcyclesIsoX₂_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) {Z : C} (h : S.X₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp S.pOpcycles (CategoryTheory.CategoryStruct.comp (S.opcyclesIsoX₂ hf).hom h) = h - CategoryTheory.ShortComplex.RightHomologyData.rightHomologyIso_hom_comp_ι_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] {Z : C} (h✝ : h.Q ⟶ Z) : CategoryTheory.CategoryStruct.comp h.rightHomologyIso.hom (CategoryTheory.CategoryStruct.comp h.ι h✝) = CategoryTheory.CategoryStruct.comp S.rightHomologyι (CategoryTheory.CategoryStruct.comp h.opcyclesIso.hom h✝) - CategoryTheory.ShortComplex.RightHomologyData.rightHomologyIso_inv_comp_rightHomologyι_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) [S.HasRightHomology] {Z : C} (h✝ : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp h.rightHomologyIso.inv (CategoryTheory.CategoryStruct.comp S.rightHomologyι h✝) = CategoryTheory.CategoryStruct.comp h.ι (CategoryTheory.CategoryStruct.comp h.opcyclesIso.inv h✝) - CategoryTheory.ShortComplex.opcyclesIsoX₂_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hf : S.f = 0) {Z : C} (h : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (S.opcyclesIsoX₂ hf).hom (CategoryTheory.CategoryStruct.comp S.pOpcycles h) = h - CategoryTheory.ShortComplex.RightHomologyData.opcyclesIso_hom_comp_descQ 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp h.opcyclesIso.hom (h.descQ k hk) = S.descOpcycles k hk - CategoryTheory.ShortComplex.RightHomologyData.opcyclesIso_inv_comp_descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp h.opcyclesIso.inv (S.descOpcycles k hk) = h.descQ k hk - CategoryTheory.ShortComplex.descOpcycles_comp 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] {A' : C} (α : A ⟶ A') : CategoryTheory.CategoryStruct.comp (S.descOpcycles k hk) α = S.descOpcycles (CategoryTheory.CategoryStruct.comp k α) ⋯ - CategoryTheory.ShortComplex.fromOpcycles_op_cyclesOpIso_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.fromOpcycles.op S.cyclesOpIso.inv = S.op.toCycles - CategoryTheory.ShortComplex.opcyclesIsoRightHomology_hom_inv_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) {Z : C} (h : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (S.opcyclesIsoRightHomology hg).hom (CategoryTheory.CategoryStruct.comp S.rightHomologyι h) = h - CategoryTheory.ShortComplex.opcyclesIsoRightHomology_inv_hom_id_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] (hg : S.g = 0) {Z : C} (h : S.rightHomology ⟶ Z) : CategoryTheory.CategoryStruct.comp S.rightHomologyι (CategoryTheory.CategoryStruct.comp (S.opcyclesIsoRightHomology hg).hom h) = h - CategoryTheory.ShortComplex.cyclesOpIso_inv_op_iCycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.cyclesOpIso.inv S.op.iCycles = S.pOpcycles.op - CategoryTheory.ShortComplex.p_descOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp S.pOpcycles (CategoryTheory.CategoryStruct.comp (S.descOpcycles k hk) h) = CategoryTheory.CategoryStruct.comp k h - CategoryTheory.ShortComplex.isoOpcyclesOfIsColimit 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {cc : CategoryTheory.Limits.CokernelCofork S.f} (hcc : CategoryTheory.Limits.IsColimit cc) : cc.pt ≅ S.opcycles - CategoryTheory.ShortComplex.RightHomologyMapData.opcyclesMap_comm 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} {φ : S₁ ⟶ S₂} {h₁ : S₁.RightHomologyData} {h₂ : S₂.RightHomologyData} (γ : CategoryTheory.ShortComplex.RightHomologyMapData φ h₁ h₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) h₂.opcyclesIso.hom = CategoryTheory.CategoryStruct.comp h₁.opcyclesIso.hom γ.φQ - CategoryTheory.ShortComplex.RightHomologyMapData.opcyclesMap_eq 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} {φ : S₁ ⟶ S₂} {h₁ : S₁.RightHomologyData} {h₂ : S₂.RightHomologyData} (γ : CategoryTheory.ShortComplex.RightHomologyMapData φ h₁ h₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap φ = CategoryTheory.CategoryStruct.comp h₁.opcyclesIso.hom (CategoryTheory.CategoryStruct.comp γ.φQ h₂.opcyclesIso.inv) - CategoryTheory.ShortComplex.RightHomologyMapData.rightHomologyMap_comm 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} {φ : S₁ ⟶ S₂} {h₁ : S₁.RightHomologyData} {h₂ : S₂.RightHomologyData} (γ : CategoryTheory.ShortComplex.RightHomologyMapData φ h₁ h₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap φ) h₂.rightHomologyIso.hom = CategoryTheory.CategoryStruct.comp h₁.rightHomologyIso.hom γ.φH - CategoryTheory.ShortComplex.RightHomologyMapData.rightHomologyMap_eq 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} {φ : S₁ ⟶ S₂} {h₁ : S₁.RightHomologyData} {h₂ : S₂.RightHomologyData} (γ : CategoryTheory.ShortComplex.RightHomologyMapData φ h₁ h₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap φ = CategoryTheory.CategoryStruct.comp h₁.rightHomologyIso.hom (CategoryTheory.CategoryStruct.comp γ.φH h₂.rightHomologyIso.inv) - CategoryTheory.ShortComplex.rightHomologyι_descOpcycles_π_eq_zero_of_boundary_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) [S.HasRightHomology] (x : S.X₃ ⟶ A) (hx : k = CategoryTheory.CategoryStruct.comp S.g x) {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp S.rightHomologyι (CategoryTheory.CategoryStruct.comp (S.descOpcycles k ⋯) h) = CategoryTheory.CategoryStruct.comp 0 h - CategoryTheory.ShortComplex.descOpcycles_comp_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] {A' : C} (α : A ⟶ A') {Z : C} (h : A' ⟶ Z) : CategoryTheory.CategoryStruct.comp (S.descOpcycles k hk) (CategoryTheory.CategoryStruct.comp α h) = CategoryTheory.CategoryStruct.comp (S.descOpcycles (CategoryTheory.CategoryStruct.comp k α) ⋯) h - CategoryTheory.ShortComplex.RightHomologyData.opcyclesIso_inv_comp_descOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} (h : S.RightHomologyData) {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] {Z : C} (h✝ : A ⟶ Z) : CategoryTheory.CategoryStruct.comp h.opcyclesIso.inv (CategoryTheory.CategoryStruct.comp (S.descOpcycles k hk) h✝) = CategoryTheory.CategoryStruct.comp (h.descQ k hk) h✝ - CategoryTheory.ShortComplex.opcyclesMap_comp_descOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S S₁ : CategoryTheory.ShortComplex C} {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] (φ : S₁ ⟶ S) [S₁.HasRightHomology] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) (S.descOpcycles k hk) = S₁.descOpcycles (CategoryTheory.CategoryStruct.comp φ.τ₂ k) ⋯ - CategoryTheory.ShortComplex.fromOpcycles_op_cyclesOpIso_inv_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {Z : Cᵒᵖ} (h : S.op.cycles ⟶ Z) : CategoryTheory.CategoryStruct.comp S.fromOpcycles.op (CategoryTheory.CategoryStruct.comp S.cyclesOpIso.inv h) = CategoryTheory.CategoryStruct.comp S.op.toCycles h - CategoryTheory.ShortComplex.opcyclesMap_comp_descOpcycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S S₁ : CategoryTheory.ShortComplex C} {A : C} (k : S.X₂ ⟶ A) (hk : CategoryTheory.CategoryStruct.comp S.f k = 0) [S.HasRightHomology] (φ : S₁ ⟶ S) [S₁.HasRightHomology] {Z : C} (h : A ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ) (CategoryTheory.CategoryStruct.comp (S.descOpcycles k hk) h) = CategoryTheory.CategoryStruct.comp (S₁.descOpcycles (CategoryTheory.CategoryStruct.comp φ.τ₂ k) ⋯) h - CategoryTheory.ShortComplex.cyclesOpIso_inv_op_iCycles_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {Z : Cᵒᵖ} (h : S.op.X₂ ⟶ Z) : CategoryTheory.CategoryStruct.comp S.cyclesOpIso.inv (CategoryTheory.CategoryStruct.comp S.op.iCycles h) = CategoryTheory.CategoryStruct.comp S.pOpcycles.op h - CategoryTheory.ShortComplex.rightHomologyMap_op 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : (CategoryTheory.ShortComplex.rightHomologyMap φ).op = CategoryTheory.CategoryStruct.comp S₂.leftHomologyOpIso.inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.leftHomologyMap (CategoryTheory.ShortComplex.opMap φ)) S₁.leftHomologyOpIso.hom) - CategoryTheory.ShortComplex.cyclesOpIso_inv_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ).op S₁.cyclesOpIso.inv = CategoryTheory.CategoryStruct.comp S₂.cyclesOpIso.inv (CategoryTheory.ShortComplex.cyclesMap (CategoryTheory.ShortComplex.opMap φ)) - CategoryTheory.ShortComplex.cyclesOpIso_hom_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.cyclesMap (CategoryTheory.ShortComplex.opMap φ)) S₁.cyclesOpIso.hom = CategoryTheory.CategoryStruct.comp S₂.cyclesOpIso.hom (CategoryTheory.ShortComplex.opcyclesMap φ).op - CategoryTheory.ShortComplex.π_isoOpcyclesOfIsColimit_hom 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {cc : CategoryTheory.Limits.CokernelCofork S.f} (hcc : CategoryTheory.Limits.IsColimit cc) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Cofork.π cc) (S.isoOpcyclesOfIsColimit hcc).hom = S.pOpcycles - CategoryTheory.ShortComplex.cyclesOpIso_hom_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] {Z : Cᵒᵖ} (h : Opposite.op S₁.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.cyclesMap (CategoryTheory.ShortComplex.opMap φ)) (CategoryTheory.CategoryStruct.comp S₁.cyclesOpIso.hom h) = CategoryTheory.CategoryStruct.comp S₂.cyclesOpIso.hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ).op h) - CategoryTheory.ShortComplex.cyclesOpIso_inv_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] {Z : Cᵒᵖ} (h : S₁.op.cycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap φ).op (CategoryTheory.CategoryStruct.comp S₁.cyclesOpIso.inv h) = CategoryTheory.CategoryStruct.comp S₂.cyclesOpIso.inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.cyclesMap (CategoryTheory.ShortComplex.opMap φ)) h) - CategoryTheory.ShortComplex.pOpcycles_π_isoOpcyclesOfIsColimit_inv 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {cc : CategoryTheory.Limits.CokernelCofork S.f} (hcc : CategoryTheory.Limits.IsColimit cc) : CategoryTheory.CategoryStruct.comp S.pOpcycles (S.isoOpcyclesOfIsColimit hcc).inv = CategoryTheory.Limits.Cofork.π cc - CategoryTheory.ShortComplex.π_isoOpcyclesOfIsColimit_hom_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {cc : CategoryTheory.Limits.CokernelCofork S.f} (hcc : CategoryTheory.Limits.IsColimit cc) {Z : C} (h : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Cofork.π cc) (CategoryTheory.CategoryStruct.comp (S.isoOpcyclesOfIsColimit hcc).hom h) = CategoryTheory.CategoryStruct.comp S.pOpcycles h - CategoryTheory.ShortComplex.pOpcycles_π_isoOpcyclesOfIsColimit_inv_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.RightHomology
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasRightHomology] {cc : CategoryTheory.Limits.CokernelCofork S.f} (hcc : CategoryTheory.Limits.IsColimit cc) {Z : C} (h : cc.pt ⟶ Z) : CategoryTheory.CategoryStruct.comp S.pOpcycles (CategoryTheory.CategoryStruct.comp (S.isoOpcyclesOfIsColimit hcc).inv h) = CategoryTheory.CategoryStruct.comp (CategoryTheory.Limits.Cofork.π cc) h - CategoryTheory.ShortComplex.hasRightHomology_of_hasHomology 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [S.HasHomology] : S.HasRightHomology - CategoryTheory.ShortComplex.leftRightHomologyComparison 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasLeftHomology] [S.HasRightHomology] : S.leftHomology ⟶ S.rightHomology - CategoryTheory.ShortComplex.hasHomology_of_isIsoLeftRightHomologyComparison 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [S.HasLeftHomology] [S.HasRightHomology] [h : CategoryTheory.IsIso S.leftRightHomologyComparison] : S.HasHomology - CategoryTheory.ShortComplex.π_leftRightHomologyComparison_ι 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasLeftHomology] [S.HasRightHomology] : CategoryTheory.CategoryStruct.comp S.leftHomologyπ (CategoryTheory.CategoryStruct.comp S.leftRightHomologyComparison S.rightHomologyι) = CategoryTheory.CategoryStruct.comp S.iCycles S.pOpcycles - CategoryTheory.ShortComplex.leftRightHomologyComparison_eq 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {S : CategoryTheory.ShortComplex C} [S.HasLeftHomology] [S.HasRightHomology] (h₁ : S.LeftHomologyData) (h₂ : S.RightHomologyData) : S.leftRightHomologyComparison = CategoryTheory.CategoryStruct.comp h₁.leftHomologyIso.hom (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.leftRightHomologyComparison' h₁ h₂) h₂.rightHomologyIso.inv) - CategoryTheory.ShortComplex.π_leftRightHomologyComparison_ι_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.Homology
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] (S : CategoryTheory.ShortComplex C) [S.HasLeftHomology] [S.HasRightHomology] {Z : C} (h : S.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp S.leftHomologyπ (CategoryTheory.CategoryStruct.comp S.leftRightHomologyComparison (CategoryTheory.CategoryStruct.comp S.rightHomologyι h)) = CategoryTheory.CategoryStruct.comp S.iCycles (CategoryTheory.CategoryStruct.comp S.pOpcycles h) - CategoryTheory.ShortComplex.hasRightHomology_of_preserves 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] (S : CategoryTheory.ShortComplex C) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : (S.map F).HasRightHomology - CategoryTheory.ShortComplex.hasRightHomology_of_preserves' 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] (S : CategoryTheory.ShortComplex C) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : (F.mapShortComplex.obj S).HasRightHomology - CategoryTheory.ShortComplex.mapOpcyclesIso 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] (S : CategoryTheory.ShortComplex C) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : (S.map F).opcycles ≅ F.obj S.opcycles - CategoryTheory.ShortComplex.mapRightHomologyIso 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] (S : CategoryTheory.ShortComplex C) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : (S.map F).rightHomology ≅ F.obj S.rightHomology - CategoryTheory.ShortComplex.RightHomologyData.mapOpcyclesIso_eq 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S : CategoryTheory.ShortComplex C} (hr : S.RightHomologyData) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : S.mapOpcyclesIso F = (hr.map F).opcyclesIso ≪≫ F.mapIso hr.opcyclesIso.symm - CategoryTheory.ShortComplex.RightHomologyData.mapRightHomologyIso_eq 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S : CategoryTheory.ShortComplex C} (hr : S.RightHomologyData) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S.HasRightHomology] [F.PreservesRightHomologyOf S] : S.mapRightHomologyIso F = (hr.map F).rightHomologyIso ≪≫ F.mapIso hr.rightHomologyIso.symm - CategoryTheory.ShortComplex.mapOpcyclesIso_inv_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.opcyclesMap φ)) (S₂.mapOpcyclesIso F).inv = CategoryTheory.CategoryStruct.comp (S₁.mapOpcyclesIso F).inv (CategoryTheory.ShortComplex.opcyclesMap (F.mapShortComplex.map φ)) - CategoryTheory.ShortComplex.mapRightHomologyIso_inv_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.rightHomologyMap φ)) (S₂.mapRightHomologyIso F).inv = CategoryTheory.CategoryStruct.comp (S₁.mapRightHomologyIso F).inv (CategoryTheory.ShortComplex.rightHomologyMap (F.mapShortComplex.map φ)) - CategoryTheory.ShortComplex.mapOpcyclesIso_inv_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] {Z : D} (h : (S₂.map F).opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.opcyclesMap φ)) (CategoryTheory.CategoryStruct.comp (S₂.mapOpcyclesIso F).inv h) = CategoryTheory.CategoryStruct.comp (S₁.mapOpcyclesIso F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap (F.mapShortComplex.map φ)) h) - CategoryTheory.ShortComplex.mapRightHomologyIso_inv_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] {Z : D} (h : (S₂.map F).rightHomology ⟶ Z) : CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.rightHomologyMap φ)) (CategoryTheory.CategoryStruct.comp (S₂.mapRightHomologyIso F).inv h) = CategoryTheory.CategoryStruct.comp (S₁.mapRightHomologyIso F).inv (CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap (F.mapShortComplex.map φ)) h) - CategoryTheory.ShortComplex.mapOpcyclesIso_hom_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap (F.mapShortComplex.map φ)) (S₂.mapOpcyclesIso F).hom = CategoryTheory.CategoryStruct.comp (S₁.mapOpcyclesIso F).hom (F.map (CategoryTheory.ShortComplex.opcyclesMap φ)) - CategoryTheory.ShortComplex.mapRightHomologyIso_hom_naturality 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap (F.mapShortComplex.map φ)) (S₂.mapRightHomologyIso F).hom = CategoryTheory.CategoryStruct.comp (S₁.mapRightHomologyIso F).hom (F.map (CategoryTheory.ShortComplex.rightHomologyMap φ)) - CategoryTheory.ShortComplex.mapOpcyclesIso_hom_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] {Z : D} (h : F.obj S₂.opcycles ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.opcyclesMap (F.mapShortComplex.map φ)) (CategoryTheory.CategoryStruct.comp (S₂.mapOpcyclesIso F).hom h) = CategoryTheory.CategoryStruct.comp (S₁.mapOpcyclesIso F).hom (CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.opcyclesMap φ)) h) - CategoryTheory.ShortComplex.mapRightHomologyIso_hom_naturality_assoc 📋 Mathlib.Algebra.Homology.ShortComplex.PreservesHomology
{C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Category.{v_2, u_2} D] [CategoryTheory.Limits.HasZeroMorphisms C] [CategoryTheory.Limits.HasZeroMorphisms D] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (F : CategoryTheory.Functor C D) [F.PreservesZeroMorphisms] [S₁.HasRightHomology] [S₂.HasRightHomology] [F.PreservesRightHomologyOf S₁] [F.PreservesRightHomologyOf S₂] {Z : D} (h : F.obj S₂.rightHomology ⟶ Z) : CategoryTheory.CategoryStruct.comp (CategoryTheory.ShortComplex.rightHomologyMap (F.mapShortComplex.map φ)) (CategoryTheory.CategoryStruct.comp (S₂.mapRightHomologyIso F).hom h) = CategoryTheory.CategoryStruct.comp (S₁.mapRightHomologyIso F).hom (CategoryTheory.CategoryStruct.comp (F.map (CategoryTheory.ShortComplex.rightHomologyMap φ)) h) - CategoryTheory.ShortComplex.Homotopy.rightHomologyMap_congr 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} {φ₁ φ₂ : S₁ ⟶ S₂} (h : CategoryTheory.ShortComplex.Homotopy φ₁ φ₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap φ₁ = CategoryTheory.ShortComplex.rightHomologyMap φ₂ - CategoryTheory.ShortComplex.opcyclesMap_neg 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap (-φ) = -CategoryTheory.ShortComplex.opcyclesMap φ - CategoryTheory.ShortComplex.rightHomologyMap_neg 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap (-φ) = -CategoryTheory.ShortComplex.rightHomologyMap φ - CategoryTheory.ShortComplex.opcyclesMap_sub 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ φ' : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap (φ - φ') = CategoryTheory.ShortComplex.opcyclesMap φ - CategoryTheory.ShortComplex.opcyclesMap φ' - CategoryTheory.ShortComplex.rightHomologyMap_sub 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ φ' : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap (φ - φ') = CategoryTheory.ShortComplex.rightHomologyMap φ - CategoryTheory.ShortComplex.rightHomologyMap φ' - CategoryTheory.ShortComplex.rightHomologyMap_nullHomotopic 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] (S₁ S₂ : CategoryTheory.ShortComplex C) [S₁.HasRightHomology] [S₂.HasRightHomology] (h₀ : S₁.X₁ ⟶ S₂.X₁) (h₀_f : CategoryTheory.CategoryStruct.comp h₀ S₂.f = 0) (h₁ : S₁.X₂ ⟶ S₂.X₁) (h₂ : S₁.X₃ ⟶ S₂.X₂) (h₃ : S₁.X₃ ⟶ S₂.X₃) (g_h₃ : CategoryTheory.CategoryStruct.comp S₁.g h₃ = 0) : CategoryTheory.ShortComplex.rightHomologyMap (S₁.nullHomotopic S₂ h₀ h₀_f h₁ h₂ h₃ g_h₃) = 0 - CategoryTheory.ShortComplex.opcyclesMap_add 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ φ' : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap (φ + φ') = CategoryTheory.ShortComplex.opcyclesMap φ + CategoryTheory.ShortComplex.opcyclesMap φ' - CategoryTheory.ShortComplex.rightHomologyMap_add 📋 Mathlib.Algebra.Homology.ShortComplex.Preadditive
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ φ' : S₁ ⟶ S₂) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap (φ + φ') = CategoryTheory.ShortComplex.rightHomologyMap φ + CategoryTheory.ShortComplex.rightHomologyMap φ' - CategoryTheory.ShortComplex.Exact.mono_fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.Exact
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S : CategoryTheory.ShortComplex C} (hS : S.Exact) [S.HasRightHomology] : CategoryTheory.Mono S.fromOpcycles - CategoryTheory.ShortComplex.Exact.isIso_fromOpcycles 📋 Mathlib.Algebra.Homology.ShortComplex.Exact
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {S : CategoryTheory.ShortComplex C} [CategoryTheory.Balanced C] (hS : S.Exact) [CategoryTheory.Epi S.g] [S.HasRightHomology] : CategoryTheory.IsIso S.fromOpcycles - CategoryTheory.ComposableArrows.IsComplex.opcyclesToCycles 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.IsComplex) (k : ℕ) (hk : k ≤ n := by lia) [(S.sc hS k ⋯).HasRightHomology] [(S.sc hS (k + 1) ⋯).HasLeftHomology] : (S.sc hS k ⋯).opcycles ⟶ (S.sc hS (k + 1) ⋯).cycles - CategoryTheory.ComposableArrows.Exact.opcyclesIsoCycles 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Balanced C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.Exact) (k : ℕ) (hk : k ≤ n := by lia) [h₁ : (hS.sc k ⋯).HasRightHomology] [h₂ : (hS.sc (k + 1) ⋯).HasLeftHomology] : (hS.sc k ⋯).opcycles ≅ (hS.sc (k + 1) ⋯).cycles - CategoryTheory.ComposableArrows.IsComplex.opcyclesToCycles_fac 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.IsComplex) (k : ℕ) (hk : k ≤ n := by lia) [(S.sc hS k ⋯).HasRightHomology] [(S.sc hS (k + 1) ⋯).HasLeftHomology] : CategoryTheory.CategoryStruct.comp (S.sc hS k ⋯).pOpcycles (CategoryTheory.CategoryStruct.comp (hS.opcyclesToCycles k ⋯) (S.sc hS (k + 1) ⋯).iCycles) = S.map' (k + 1) (k + 2) ⋯ ⋯ - CategoryTheory.ComposableArrows.Exact.opcyclesIsoCycles_hom_fac 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Balanced C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.Exact) (k : ℕ) (hk : k ≤ n := by lia) [h₁ : (hS.sc k ⋯).HasRightHomology] [h₂ : (hS.sc (k + 1) ⋯).HasLeftHomology] : CategoryTheory.CategoryStruct.comp (hS.sc k ⋯).pOpcycles (CategoryTheory.CategoryStruct.comp (hS.opcyclesIsoCycles k ⋯).hom (hS.sc (k + 1) ⋯).iCycles) = S.map' (k + 1) (k + 2) ⋯ ⋯ - CategoryTheory.ComposableArrows.IsComplex.opcyclesToCycles_fac_assoc 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.IsComplex) (k : ℕ) (hk : k ≤ n := by lia) [(S.sc hS k ⋯).HasRightHomology] [(S.sc hS (k + 1) ⋯).HasLeftHomology] {Z : C} (h : S.obj ⟨k + 1 + 1, ⋯⟩ ⟶ Z) : CategoryTheory.CategoryStruct.comp (S.sc hS k ⋯).pOpcycles (CategoryTheory.CategoryStruct.comp (hS.opcyclesToCycles k ⋯) (CategoryTheory.CategoryStruct.comp (S.sc hS (k + 1) ⋯).iCycles h)) = CategoryTheory.CategoryStruct.comp (S.map' (k + 1) (k + 2) ⋯ ⋯) h - CategoryTheory.ComposableArrows.Exact.opcyclesIsoCycles_hom_fac_assoc 📋 Mathlib.Algebra.Homology.ExactSequenceFour
{C : Type u_1} [CategoryTheory.Category.{u_2, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Balanced C] {n : ℕ} {S : CategoryTheory.ComposableArrows C (n + 3)} (hS : S.Exact) (k : ℕ) (hk : k ≤ n := by lia) [h₁ : (hS.sc k ⋯).HasRightHomology] [h₂ : (hS.sc (k + 1) ⋯).HasLeftHomology] {Z : C} (h : S.obj ⟨k + 1 + 1, ⋯⟩ ⟶ Z) : CategoryTheory.CategoryStruct.comp (hS.sc k ⋯).pOpcycles (CategoryTheory.CategoryStruct.comp (hS.opcyclesIsoCycles k ⋯).hom (CategoryTheory.CategoryStruct.comp (hS.sc (k + 1) ⋯).iCycles h)) = CategoryTheory.CategoryStruct.comp (S.map' (k + 1) (k + 2) ⋯ ⋯) h - CategoryTheory.ShortComplex.opcyclesMap_smul 📋 Mathlib.Algebra.Homology.ShortComplex.Linear
{R : Type u_1} {C : Type u_2} [Semiring R] [CategoryTheory.Category.{v_1, u_2} C] [CategoryTheory.Preadditive C] [CategoryTheory.Linear R C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (a : R) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.opcyclesMap (a • φ) = a • CategoryTheory.ShortComplex.opcyclesMap φ - CategoryTheory.ShortComplex.rightHomologyMap_smul 📋 Mathlib.Algebra.Homology.ShortComplex.Linear
{R : Type u_1} {C : Type u_2} [Semiring R] [CategoryTheory.Category.{v_1, u_2} C] [CategoryTheory.Preadditive C] [CategoryTheory.Linear R C] {S₁ S₂ : CategoryTheory.ShortComplex C} (φ : S₁ ⟶ S₂) (a : R) [S₁.HasRightHomology] [S₂.HasRightHomology] : CategoryTheory.ShortComplex.rightHomologyMap (a • φ) = a • CategoryTheory.ShortComplex.rightHomologyMap φ
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