Loogle!
Result
Found 91 declarations mentioning CochainComplex.HomComplex.Cochain.ofHom.
- CochainComplex.HomComplex.Cochain.ofHom 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) : CochainComplex.HomComplex.Cochain F G 0 - CochainComplex.HomComplex.Cochain.comp_id 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {n : ℤ} (z₁ : CochainComplex.HomComplex.Cochain F G n) : z₁.comp (CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id G)) ⋯ = z₁ - CochainComplex.HomComplex.Cochain.id_comp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {n : ℤ} (z₂ : CochainComplex.HomComplex.Cochain F G n) : (CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id F)).comp z₂ ⋯ = z₂ - CochainComplex.HomComplex.δ_neg_one_cochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (z : CochainComplex.HomComplex.Cochain F G (-1)) : CochainComplex.HomComplex.δ (-1) 0 z = CochainComplex.HomComplex.Cochain.ofHom (Homotopy.nullHomotopicMap' fun i j hij => z.v i j ⋯) - CochainComplex.HomComplex.δ_ofHom 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {p : ℤ} (φ : F ⟶ G) : CochainComplex.HomComplex.δ 0 p (CochainComplex.HomComplex.Cochain.ofHom φ) = 0 - CochainComplex.HomComplex.Cocycle.cochain_ofHom_homOf_eq_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (z : CochainComplex.HomComplex.Cocycle F G 0) : CochainComplex.HomComplex.Cochain.ofHom z.homOf = ↑z - CochainComplex.HomComplex.δ_comp_ofHom 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G K : CochainComplex C ℤ} {n : ℤ} (z₁ : CochainComplex.HomComplex.Cochain F G n) (f : G ⟶ K) (m : ℤ) : CochainComplex.HomComplex.δ n m (z₁.comp (CochainComplex.HomComplex.Cochain.ofHom f) ⋯) = (CochainComplex.HomComplex.δ n m z₁).comp (CochainComplex.HomComplex.Cochain.ofHom f) ⋯ - CochainComplex.HomComplex.δ_ofHom_comp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G K : CochainComplex C ℤ} {n : ℤ} (f : F ⟶ G) (z : CochainComplex.HomComplex.Cochain G K n) (m : ℤ) : CochainComplex.HomComplex.δ n m ((CochainComplex.HomComplex.Cochain.ofHom f).comp z ⋯) = (CochainComplex.HomComplex.Cochain.ofHom f).comp (CochainComplex.HomComplex.δ n m z) ⋯ - CochainComplex.HomComplex.Cochain.ofHom_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) (p : ℤ) : (CochainComplex.HomComplex.Cochain.ofHom φ).v p p ⋯ = φ.f p - CochainComplex.HomComplex.Cocycle.ofHom_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) : ↑(CochainComplex.HomComplex.Cocycle.ofHom φ) = CochainComplex.HomComplex.Cochain.ofHom φ - CochainComplex.HomComplex.Cochain.ofHom_injective 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {f₁ f₂ : F ⟶ G} (h : CochainComplex.HomComplex.Cochain.ofHom f₁ = CochainComplex.HomComplex.Cochain.ofHom f₂) : f₁ = f₂ - CochainComplex.HomComplex.Cochain.ofHom_neg 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) : CochainComplex.HomComplex.Cochain.ofHom (-φ) = -CochainComplex.HomComplex.Cochain.ofHom φ - CochainComplex.HomComplex.Cochain.ofHom_zero 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] (F G : CochainComplex C ℤ) : CochainComplex.HomComplex.Cochain.ofHom 0 = 0 - CochainComplex.HomComplex.Cochain.ofHom_comp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G K : CochainComplex C ℤ} (f : F ⟶ G) (g : G ⟶ K) : CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp f g) = (CochainComplex.HomComplex.Cochain.ofHom f).comp (CochainComplex.HomComplex.Cochain.ofHom g) ⋯ - CochainComplex.HomComplex.Cocycle.postcomp_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G K : CochainComplex C ℤ} {n : ℤ} (z : CochainComplex.HomComplex.Cocycle F G n) (f : G ⟶ K) : ↑(z.postcomp f) = (↑z).comp (CochainComplex.HomComplex.Cochain.ofHom f) ⋯ - CochainComplex.HomComplex.Cocycle.precomp_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G K : CochainComplex C ℤ} {n : ℤ} (z : CochainComplex.HomComplex.Cocycle G K n) (f : F ⟶ G) : ↑(z.precomp f) = (CochainComplex.HomComplex.Cochain.ofHom f).comp ↑z ⋯ - CochainComplex.HomComplex.δ_ofHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {φ₁ φ₂ : F ⟶ G} (h : Homotopy φ₁ φ₂) : CochainComplex.HomComplex.δ (-1) 0 (CochainComplex.HomComplex.Cochain.ofHomotopy h) = CochainComplex.HomComplex.Cochain.ofHom φ₁ - CochainComplex.HomComplex.Cochain.ofHom φ₂ - CochainComplex.HomComplex.Cochain.equivHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ₁ φ₂ : F ⟶ G) : Homotopy φ₁ φ₂ ≃ { z // CochainComplex.HomComplex.Cochain.ofHom φ₁ = CochainComplex.HomComplex.δ (-1) 0 z + CochainComplex.HomComplex.Cochain.ofHom φ₂ } - CochainComplex.HomComplex.Cochain.d_comp_ofHom_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) (p' p q : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp (F.d p' p) ((CochainComplex.HomComplex.Cochain.ofHom φ).v p q hpq) = CategoryTheory.CategoryStruct.comp (F.d p' q) (φ.f q) - CochainComplex.HomComplex.Cochain.ofHom_v_comp_d 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) (p q q' : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.HomComplex.Cochain.ofHom φ).v p q hpq) (G.d q q') = CategoryTheory.CategoryStruct.comp (φ.f p) (G.d p q') - CochainComplex.HomComplex.Cochain.ofHom_sub 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ₁ φ₂ : F ⟶ G) : CochainComplex.HomComplex.Cochain.ofHom (φ₁ - φ₂) = CochainComplex.HomComplex.Cochain.ofHom φ₁ - CochainComplex.HomComplex.Cochain.ofHom φ₂ - CochainComplex.HomComplex.Cochain.ofHom_add 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ₁ φ₂ : F ⟶ G) : CochainComplex.HomComplex.Cochain.ofHom (φ₁ + φ₂) = CochainComplex.HomComplex.Cochain.ofHom φ₁ + CochainComplex.HomComplex.Cochain.ofHom φ₂ - CochainComplex.HomComplex.Cochain.map_ofHom 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] (K L : CochainComplex C ℤ) {D : Type u_2} [CategoryTheory.Category.{v_1, u_2} D] [CategoryTheory.Preadditive D] (f : K ⟶ L) (Φ : CategoryTheory.Functor C D) [Φ.Additive] : (CochainComplex.HomComplex.Cochain.ofHom f).map Φ = CochainComplex.HomComplex.Cochain.ofHom ((Φ.mapHomologicalComplex (ComplexShape.up ℤ)).map f) - CochainComplex.HomComplex.Cochain.equivHomotopy_apply_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ₁ φ₂ : F ⟶ G) (ho : Homotopy φ₁ φ₂) : ↑((CochainComplex.HomComplex.Cochain.equivHomotopy φ₁ φ₂) ho) = CochainComplex.HomComplex.Cochain.ofHomotopy ho - CochainComplex.HomComplex.Cochain.equivHomotopy_apply_of_eq 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} {φ₁ φ₂ : F ⟶ G} (h : φ₁ = φ₂) : ↑((CochainComplex.HomComplex.Cochain.equivHomotopy φ₁ φ₂) (Homotopy.ofEq h)) = 0 - CochainComplex.HomComplex.Cochain.equivHomotopy_symm_apply_hom 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplex
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ₁ φ₂ : F ⟶ G) (z : { z // CochainComplex.HomComplex.Cochain.ofHom φ₁ = CochainComplex.HomComplex.δ (-1) 0 z + CochainComplex.HomComplex.Cochain.ofHom φ₂ }) (i j : ℤ) : ((CochainComplex.HomComplex.Cochain.equivHomotopy φ₁ φ₂).symm z).hom i j = if hij : i + -1 = j then (↑z).v i j hij else 0 - CochainComplex.mappingCone.inr_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp (CochainComplex.mappingCone.descCochain φ α β h) ⋯ = β - CochainComplex.mappingCone.inr_snd_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e : ℤ} (γ : CochainComplex.HomComplex.Cochain G K d) (he : 0 + d = e) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ((CochainComplex.mappingCone.snd φ).comp γ he) ⋯ = γ - CochainComplex.mappingCone.δ_inl 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.δ (-1) 0 (CochainComplex.mappingCone.inl φ) = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ (CochainComplex.mappingCone.inr φ)) - CochainComplex.mappingCone.inr_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp (CochainComplex.mappingCone.snd φ) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id G) - CochainComplex.mappingCone.ext_cochain_from_iff 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] (i j : ℤ) (hij : i + 1 = j) {K : CochainComplex C ℤ} {γ₁ γ₂ : CochainComplex.HomComplex.Cochain (CochainComplex.mappingCone φ) K j} : γ₁ = γ₂ ↔ (CochainComplex.mappingCone.inl φ).comp γ₁ ⋯ = (CochainComplex.mappingCone.inl φ).comp γ₂ ⋯ ∧ (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp γ₁ ⋯ = (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp γ₂ ⋯ - CochainComplex.mappingCone.descCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : CochainComplex.HomComplex.δ m n α = n.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯) : CochainComplex.HomComplex.Cocycle (CochainComplex.mappingCone φ) K n - CochainComplex.mappingCone.ofHom_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.desc φ α β eq) = CochainComplex.mappingCone.descCochain φ α (CochainComplex.HomComplex.Cochain.ofHom β) ⋯ - CochainComplex.mappingCone.liftCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (eq : CochainComplex.HomComplex.δ n m β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cocycle K (CochainComplex.mappingCone φ) n - CochainComplex.mappingCone.inl_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.desc φ α β eq)) ⋯ = α - CochainComplex.mappingCone.desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CochainComplex.mappingCone φ ⟶ K - CochainComplex.mappingCone.inr_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = 0 - CochainComplex.mappingCone.inl_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (CochainComplex.mappingCone.inl φ).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id F) - CochainComplex.mappingCone.inr_fst_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {d e f : ℤ} (γ : CochainComplex.HomComplex.Cochain F K d) (he : 1 + d = e) (hf : 0 + e = f) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)).comp ((↑(CochainComplex.mappingCone.fst φ)).comp γ he) hf = 0 - CochainComplex.mappingCone.inr_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) (CochainComplex.mappingCone.desc φ α β eq) = β - CochainComplex.mappingCone.δ_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : CochainComplex.HomComplex.δ 0 1 (CochainComplex.mappingCone.snd φ) = -(↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ - CochainComplex.mappingCone.δ_liftCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (m' : ℤ) (hm' : m + 1 = m') : CochainComplex.HomComplex.δ n m (CochainComplex.mappingCone.liftCochain φ α β h) = -(CochainComplex.HomComplex.δ m m' α).comp (CochainComplex.mappingCone.inl φ) ⋯ + (CochainComplex.HomComplex.δ n m β + α.comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)) ⋯ - CochainComplex.mappingCone.lift_snd 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq)).comp (CochainComplex.mappingCone.snd φ) ⋯ = β - CochainComplex.mappingCone.lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : K ⟶ CochainComplex.mappingCone φ - CochainComplex.mappingCone.inl_v_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (h : p + -1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q h) ((CochainComplex.mappingCone.desc φ α β eq).f q) = α.v p q h - CochainComplex.mappingCone.inr_f_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) ((CochainComplex.mappingCone.desc φ α β eq).f p) = β.f p - CochainComplex.mappingCone.descCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cocycle G K n) (h : m + 1 = n) (eq : CochainComplex.HomComplex.δ m n α = n.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯) : ↑(CochainComplex.mappingCone.descCocycle φ α β h eq) = CochainComplex.mappingCone.descCochain φ α (↑β) h - CochainComplex.mappingCone.liftCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle K F m) (β : CochainComplex.HomComplex.Cochain K G n) (h : n + 1 = m) (eq : CochainComplex.HomComplex.δ n m β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : ↑(CochainComplex.mappingCone.liftCocycle φ α β h eq) = CochainComplex.mappingCone.liftCochain φ (↑α) β h - CochainComplex.mappingCone.ofHom_lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq) = CochainComplex.mappingCone.liftCochain φ (↑α) β ⋯ - CochainComplex.mappingCone.inl_v_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (h : p + -1 = q) {Z : C} (h✝ : K.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inl φ).v p q h) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.desc φ α β eq).f q) h✝) = CategoryTheory.CategoryStruct.comp (α.v p q h) h✝ - CochainComplex.mappingCone.δ_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain F K m) (β : CochainComplex.HomComplex.Cochain G K n) (h : m + 1 = n) (n' : ℤ) (hn' : n + 1 = n') : CochainComplex.HomComplex.δ n n' (CochainComplex.mappingCone.descCochain φ α β h) = (↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.HomComplex.δ m n α + n'.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp β ⋯) ⋯ + (CochainComplex.mappingCone.snd φ).comp (CochainComplex.HomComplex.δ n n' β) ⋯ - CochainComplex.mappingCone.inr_f_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p : ℤ) {Z : C} (h : K.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.inr φ).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.desc φ α β eq).f p) h) = CategoryTheory.CategoryStruct.comp (β.f p) h - CochainComplex.mappingCone.inr_desc_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) {Z : CochainComplex C ℤ} (h : K ⟶ Z) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.desc φ α β eq) h) = CategoryTheory.CategoryStruct.comp β h - CochainComplex.mappingCone.lift_f_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 0 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) ((CochainComplex.mappingCone.snd φ).v p q hpq) = β.v p q hpq - CochainComplex.mappingCone.id 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] : (↑(CochainComplex.mappingCone.fst φ)).comp (CochainComplex.mappingCone.inl φ) ⋯ + (CochainComplex.mappingCone.snd φ).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.inr φ)) ⋯ = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.id (CochainComplex.mappingCone φ)) - CochainComplex.mappingCone.lift_f_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 0 = q) {Z : C} (h : G.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p q hpq) h) = CategoryTheory.CategoryStruct.comp (β.v p q hpq) h - CochainComplex.mappingCone.lift_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCone.lift φ α β eq)).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = ↑α - CochainComplex.mappingCone.descHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (f₁ f₂ : CochainComplex.mappingCone φ ⟶ K) (γ₁ : CochainComplex.HomComplex.Cochain F K (-2)) (γ₂ : CochainComplex.HomComplex.Cochain G K (-1)) (h₁ : (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom f₁) ⋯ = CochainComplex.HomComplex.δ (-2) (-1) γ₁ + (CochainComplex.HomComplex.Cochain.ofHom φ).comp γ₂ ⋯ + (CochainComplex.mappingCone.inl φ).comp (CochainComplex.HomComplex.Cochain.ofHom f₂) ⋯) (h₂ : CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) f₁) = CochainComplex.HomComplex.δ (-1) 0 γ₂ + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCone.inr φ) f₂)) : Homotopy f₁ f₂ - CochainComplex.mappingCone.lift_f_fst_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) = (↑α).v p q hpq - CochainComplex.mappingCone.lift_f_fst_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) {Z : C} (h : F.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f p) (CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) h) = CategoryTheory.CategoryStruct.comp ((↑α).v p q hpq) h - CochainComplex.mappingCone.liftHomotopy 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (f₁ f₂ : K ⟶ CochainComplex.mappingCone φ) (α : CochainComplex.HomComplex.Cochain K F 0) (β : CochainComplex.HomComplex.Cochain K G (-1)) (h₁ : (CochainComplex.HomComplex.Cochain.ofHom f₁).comp ↑(CochainComplex.mappingCone.fst φ) ⋯ = -CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom f₂).comp ↑(CochainComplex.mappingCone.fst φ) ⋯) (h₂ : (CochainComplex.HomComplex.Cochain.ofHom f₁).comp (CochainComplex.mappingCone.snd φ) ⋯ = CochainComplex.HomComplex.δ (-1) 0 β + α.comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ + (CochainComplex.HomComplex.Cochain.ofHom f₂).comp (CochainComplex.mappingCone.snd φ) ⋯) : Homotopy f₁ f₂ - CochainComplex.mappingCone.desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain F K (-1)) (β : G ⟶ K) (eq : CochainComplex.HomComplex.δ (-1) 0 α = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β)) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.mappingCone.desc φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCone.fst φ)).v p q hpq) (α.v q p ⋯) + CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.snd φ).v p p ⋯) (β.f p) - CochainComplex.mappingCone.lift_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) : (CochainComplex.mappingCone.lift φ α β eq).f p = CategoryTheory.CategoryStruct.comp ((↑α).v p q hpq) ((CochainComplex.mappingCone.inl φ).v q p ⋯) + CategoryTheory.CategoryStruct.comp (β.v p p ⋯) ((CochainComplex.mappingCone.inr φ).f p) - CochainComplex.mappingCone.lift_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCone
{C : Type u_1} [CategoryTheory.Category.{v, u_1} C] [CategoryTheory.Preadditive C] {F G : CochainComplex C ℤ} (φ : F ⟶ G) [HomologicalComplex.HasHomotopyCofiber φ] {K L : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cocycle K F 1) (β : CochainComplex.HomComplex.Cochain K G 0) (eq : CochainComplex.HomComplex.δ 0 1 β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) (α' : CochainComplex.HomComplex.Cochain F L (-1)) (β' : G ⟶ L) (eq' : CochainComplex.HomComplex.δ (-1) 0 α' = CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp φ β')) (n n' : ℤ) (hnn' : n + 1 = n') : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCone.lift φ α β eq).f n) ((CochainComplex.mappingCone.desc φ α' β' eq').f n) = CategoryTheory.CategoryStruct.comp ((↑α).v n n' hnn') (α'.v n' n ⋯) + CategoryTheory.CategoryStruct.comp (β.v n n ⋯) (β'.f n) - CochainComplex.mappingCocone.liftCochain_comp_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) : (CochainComplex.mappingCocone.liftCochain φ α β h).comp (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCocone.fst φ)) ⋯ = α - CochainComplex.mappingCocone.liftCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) (hαβ : CochainComplex.HomComplex.δ m n β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : CochainComplex.HomComplex.Cocycle M (CochainComplex.mappingCocone φ) n - CochainComplex.mappingCocone.descCocycle 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K M m) (β : CochainComplex.HomComplex.Cocycle L M n) (h : m + 1 = n) (hαβ : CochainComplex.HomComplex.δ m n α + m.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) : CochainComplex.HomComplex.Cocycle (CochainComplex.mappingCocone φ) M m - CochainComplex.mappingCocone.δ_descCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K M m) (β : CochainComplex.HomComplex.Cochain L M n) (h : m + 1 = n) (n' : ℤ) (hn' : n + 1 = n') : CochainComplex.HomComplex.δ m n (CochainComplex.mappingCocone.descCochain φ α β h) = (CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCocone.fst φ)).comp (CochainComplex.HomComplex.δ m n α + m.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp β ⋯) ⋯ + (CochainComplex.mappingCocone.snd φ).comp (CochainComplex.HomComplex.δ n n' β) ⋯ - CochainComplex.mappingCocone.ofHom_lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCocone.lift φ α β hαβ) = CochainComplex.mappingCocone.liftCochain φ (CochainComplex.HomComplex.Cochain.ofHom α) β CochainComplex.mappingCocone.lift._proof_1 - CochainComplex.mappingCocone.lift 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) : M ⟶ CochainComplex.mappingCocone φ - CochainComplex.mappingCocone.desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) : CochainComplex.mappingCocone φ ⟶ M - CochainComplex.mappingCocone.δ_liftCochain 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) (n' : ℤ) (hn' : n + 1 = n') : CochainComplex.HomComplex.δ n n' (CochainComplex.mappingCocone.liftCochain φ α β h) = (CochainComplex.HomComplex.δ n n' α).comp (CochainComplex.mappingCocone.inl φ) ⋯ - (CochainComplex.HomComplex.δ m n β + α.comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯).comp (↑(CochainComplex.mappingCocone.inr φ)) hn' - CochainComplex.mappingCocone.lift_fst 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCocone.lift φ α β hαβ) (CochainComplex.mappingCocone.fst φ) = α - CochainComplex.mappingCocone.liftCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cocycle M K n) (β : CochainComplex.HomComplex.Cochain M L m) (h : m + 1 = n) (hαβ : CochainComplex.HomComplex.δ m n β + (↑α).comp (CochainComplex.HomComplex.Cochain.ofHom φ) ⋯ = 0) : ↑(CochainComplex.mappingCocone.liftCocycle φ α β h hαβ) = CochainComplex.mappingCocone.liftCochain φ (↑α) β h - CochainComplex.mappingCocone.ofHom_desc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) : CochainComplex.HomComplex.Cochain.ofHom (CochainComplex.mappingCocone.desc φ α β hαβ) = CochainComplex.mappingCocone.descCochain φ α (↑β) CochainComplex.mappingCocone.ofHom_desc._proof_2 - CochainComplex.mappingCocone.descCocycle_coe 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} {n m : ℤ} (α : CochainComplex.HomComplex.Cochain K M m) (β : CochainComplex.HomComplex.Cocycle L M n) (h : m + 1 = n) (hαβ : CochainComplex.HomComplex.δ m n α + m.negOnePow • (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) : ↑(CochainComplex.mappingCocone.descCocycle φ α β h hαβ) = CochainComplex.mappingCocone.descCochain φ α (↑β) h - CochainComplex.mappingCocone.inl_v_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.inl φ).v p p ⋯) ((CochainComplex.mappingCocone.desc φ α β hαβ).f p) = α.v p p ⋯ - CochainComplex.mappingCocone.lift_f_snd_v 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) (p q : ℤ) (hpq : p + -1 = q) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.lift φ α β hαβ).f p) ((CochainComplex.mappingCocone.snd φ).v p q hpq) = β.v p q hpq - CochainComplex.mappingCocone.lift_f_fst_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) (p : ℤ) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.lift φ α β hαβ).f p) ((CochainComplex.mappingCocone.fst φ).f p) = α.f p - CochainComplex.mappingCocone.inl_v_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) (p : ℤ) {Z : C} (h : M.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.inl φ).v p p ⋯) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.desc φ α β hαβ).f p) h) = CategoryTheory.CategoryStruct.comp (α.v p p ⋯) h - CochainComplex.mappingCocone.lift_f_snd_v_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) (p q : ℤ) (hpq : p + -1 = q) {Z : C} (h : L.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.lift φ α β hαβ).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.snd φ).v p q hpq) h) = CategoryTheory.CategoryStruct.comp (β.v p q hpq) h - CochainComplex.mappingCocone.lift_f_fst_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) (p : ℤ) {Z : C} (h : K.X p ⟶ Z) : CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.lift φ α β hαβ).f p) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.fst φ).f p) h) = CategoryTheory.CategoryStruct.comp (α.f p) h - CochainComplex.mappingCocone.lift_fst_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : M ⟶ K) (β : CochainComplex.HomComplex.Cochain M L (-1)) (hαβ : CochainComplex.HomComplex.δ (-1) 0 β + CochainComplex.HomComplex.Cochain.ofHom (CategoryTheory.CategoryStruct.comp α φ) = 0) {Z : CochainComplex C ℤ} (h : K ⟶ Z) : CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCocone.lift φ α β hαβ) (CategoryTheory.CategoryStruct.comp (CochainComplex.mappingCocone.fst φ) h) = CategoryTheory.CategoryStruct.comp α h - CochainComplex.mappingCocone.inr_v_desc_f 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) : CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCocone.inr φ)).v p q hpq) ((CochainComplex.mappingCocone.desc φ α β hαβ).f q) = (↑β).v p q hpq - CochainComplex.mappingCocone.inr_v_desc_f_assoc 📋 Mathlib.Algebra.Homology.HomotopyCategory.MappingCocone
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] {K L : CochainComplex C ℤ} (φ : K ⟶ L) [HomologicalComplex.HasHomotopyCofiber φ] {M : CochainComplex C ℤ} (α : CochainComplex.HomComplex.Cochain K M 0) (β : CochainComplex.HomComplex.Cocycle L M 1) (hαβ : CochainComplex.HomComplex.δ 0 1 α + (CochainComplex.HomComplex.Cochain.ofHom φ).comp ↑β ⋯ = 0) (p q : ℤ) (hpq : p + 1 = q) {Z : C} (h : M.X q ⟶ Z) : CategoryTheory.CategoryStruct.comp ((↑(CochainComplex.mappingCocone.inr φ)).v p q hpq) (CategoryTheory.CategoryStruct.comp ((CochainComplex.mappingCocone.desc φ α β hαβ).f q) h) = CategoryTheory.CategoryStruct.comp ((↑β).v p q hpq) h - CochainComplex.isKInjective_of_injective_aux 📋 Mathlib.Algebra.Homology.HomotopyCategory.KInjective
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {K L : CochainComplex C ℤ} (f : K ⟶ L) (α : CochainComplex.HomComplex.Cochain K L (-1)) (n m : ℤ) (hnm : n + 1 = m) (hK : HomologicalComplex.ExactAt K m) [CategoryTheory.Injective (L.X m)] (hα : (CochainComplex.HomComplex.δ (-1) 0 α).EqUpTo (CochainComplex.HomComplex.Cochain.ofHom f) n) : ∃ h, (CochainComplex.HomComplex.δ (-1) 0 (α + CochainComplex.HomComplex.Cochain.single h (-1))).EqUpTo (CochainComplex.HomComplex.Cochain.ofHom f) m - CochainComplex.Lifting.comp_coe_cocycle₁_comp 📋 Mathlib.Algebra.Homology.ModelCategory.Lifting
{C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Abelian C] {A B X Y : CochainComplex C ℤ} {t : A ⟶ X} {i : A ⟶ B} {p : X ⟶ Y} {b : B ⟶ Y} (sq : CategoryTheory.CommSq t i p b) (hsq : (n : ℤ) → ⋯.LiftStruct) {Q : CochainComplex C ℤ} {π : B ⟶ Q} {hπ : CategoryTheory.CategoryStruct.comp i π = 0} (hQ : CategoryTheory.Limits.IsColimit (CategoryTheory.Limits.CokernelCofork.ofπ π hπ)) {K : CochainComplex C ℤ} {ι : K ⟶ X} {hι : CategoryTheory.CategoryStruct.comp ι p = 0} (hK : CategoryTheory.Limits.IsLimit (CategoryTheory.Limits.KernelFork.ofι ι hι)) : (CochainComplex.HomComplex.Cochain.ofHom π).comp ((↑(CochainComplex.Lifting.cocycle₁ sq hsq hQ hK)).comp (CochainComplex.HomComplex.Cochain.ofHom ι) ⋯) ⋯ = ↑(CochainComplex.Lifting.cocycle₁' sq hsq) - CochainComplex.HomComplex.Cochain.fromSingleMk_postcomp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplexSingle
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C ℤ} {p q : ℤ} (f : X ⟶ K.X q) {n : ℤ} (h : p + n = q) {L : CochainComplex C ℤ} (g : K ⟶ L) : CochainComplex.HomComplex.Cochain.fromSingleMk (CategoryTheory.CategoryStruct.comp f (g.f q)) h = (CochainComplex.HomComplex.Cochain.fromSingleMk f h).comp (CochainComplex.HomComplex.Cochain.ofHom g) ⋯ - CochainComplex.HomComplex.Cochain.toSingleMk_precomp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplexSingle
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C ℤ} {p q : ℤ} (f : K.X p ⟶ X) {n : ℤ} (h : p + n = q) {L : CochainComplex C ℤ} (g : L ⟶ K) : CochainComplex.HomComplex.Cochain.toSingleMk (CategoryTheory.CategoryStruct.comp (g.f p) f) h = (CochainComplex.HomComplex.Cochain.ofHom g).comp (CochainComplex.HomComplex.Cochain.toSingleMk f h) ⋯ - CochainComplex.HomComplex.Cochain.fromSingleMk_precomp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplexSingle
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C ℤ} {X' : C} (g : X' ⟶ X) {p q : ℤ} (f : X ⟶ K.X q) {n : ℤ} (h : p + n = q) : CochainComplex.HomComplex.Cochain.fromSingleMk (CategoryTheory.CategoryStruct.comp g f) h = (CochainComplex.HomComplex.Cochain.ofHom ((CochainComplex.singleFunctor C p).map g)).comp (CochainComplex.HomComplex.Cochain.fromSingleMk f h) ⋯ - CochainComplex.HomComplex.Cochain.toSingleMk_postcomp 📋 Mathlib.Algebra.Homology.HomotopyCategory.HomComplexSingle
{C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasZeroObject C] {X : C} {K : CochainComplex C ℤ} {p q : ℤ} (f : K.X p ⟶ X) {n : ℤ} (h : p + n = q) {X' : C} (g : X ⟶ X') : CochainComplex.HomComplex.Cochain.toSingleMk (CategoryTheory.CategoryStruct.comp f g) h = (CochainComplex.HomComplex.Cochain.toSingleMk f h).comp (CochainComplex.HomComplex.Cochain.ofHom ((CochainComplex.singleFunctor C q).map g)) ⋯
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
🔍Real.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
🔍"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
🔍_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
🔍Real.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
🔍(?a -> ?b) -> List ?a -> List ?b
🔍List ?a -> (?a -> ?b) -> List ?bBy main conclusion:
🔍|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of all→and∀) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
🔍|- _ < _ → tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
⊢ (_ : Type _)finds all definitions which provide data while⊢ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
🔍 Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ → _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59