ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- ComplexShape.Embedding.op_f
@[simps]
def op : Embedding c.symm c'.symm 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c')
Goal: ∀ (a : ι), e.op.f a = e.f a
-- ComplexShape.Embedding.IsRelIff.rel'
class IsRelIff : Prop where
  rel' (i₁ i₂ : ι) (h : c'.Rel (e.f i₁) (e.f i₂)) : c.Rel i₁ i₂
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {e : c.Embedding c'} [self : e.IsRelIff] (i₁ i₂ : ι) (h : c'.Rel (e.f i₁) (e.f i₂))
Goal: c.Rel i₁ i₂
-- ComplexShape.Embedding.rel_iff
lemma rel_iff [e.IsRelIff] (i₁ i₂ : ι) : c'.Rel (e.f i₁) (e.f i₂) ↔ c.Rel i₁ i₂ 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsRelIff] (i₁ i₂ : ι)
Goal: c'.Rel (e.f i₁) (e.f i₂) ↔ c.Rel i₁ i₂
-- ComplexShape.Embedding.mk'_f
@[simps]
def mk' : Embedding c c' 
Arguments: {ι : Type u_1} {ι' : Type u_2} (c : ComplexShape ι) (c' : ComplexShape ι') (f : ι → ι') (hf : Function.Injective f) (iff : ∀ (i₁ i₂ : ι), c.Rel i₁ i₂ ↔ c'.Rel (f i₁) (f i₂))
Goal: ∀ (a : ι), (ComplexShape.Embedding.mk' c c' f hf iff).f a = f a
-- ComplexShape.Embedding.IsTruncGE.mem_next
class IsTruncGE extends e.IsRelIff : Prop where
  mem_next {j : ι} {k' : ι'} (h : c'.Rel (e.f j) k') :
    ∃ k, e.f k = k'
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {e : c.Embedding c'} [self : e.IsTruncGE] {j : ι} {k' : ι'} (h : c'.Rel (e.f j) k')
Goal: ∃ k, e.f k = k'
-- ComplexShape.Embedding.mem_next
lemma mem_next [e.IsTruncGE] {j : ι} {k' : ι'} (h : c'.Rel (e.f j) k') : ∃ k, e.f k = k' 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsTruncGE] {j : ι} {k' : ι'} (h : c'.Rel (e.f j) k')
Goal: ∃ k, e.f k = k'
-- ComplexShape.Embedding.IsTruncLE.mem_prev
class IsTruncLE extends e.IsRelIff : Prop where
  mem_prev {i' : ι'} {j : ι} (h : c'.Rel i' (e.f j)) :
    ∃ i, e.f i = i'
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} {e : c.Embedding c'} [self : e.IsTruncLE] {i' : ι'} {j : ι} (h : c'.Rel i' (e.f j))
Goal: ∃ i, e.f i = i'
-- ComplexShape.Embedding.mem_prev
lemma mem_prev [e.IsTruncLE] {i' : ι'} {j : ι} (h : c'.Rel i' (e.f j)) : ∃ i, e.f i = i' 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') [e.IsTruncLE] {i' : ι'} {j : ι} (h : c'.Rel i' (e.f j))
Goal: ∃ i, e.f i = i'
-- ComplexShape.Embedding.r_eq_some
lemma r_eq_some {i : ι} {i' : ι'} (hi : e.f i = i') :
    e.r i' = some i 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') {i : ι} {i' : ι'} (hi : e.f i = i')
Goal: e.r i' = some i
-- ComplexShape.Embedding.r_eq_none
lemma r_eq_none (i' : ι') (hi : ∀ i, e.f i ≠ i') :
    e.r i' = none 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') (i' : ι') (hi : ∀ (i : ι), e.f i ≠ i')
Goal: e.r i' = none
-- ComplexShape.Embedding.r_f
@[simp] lemma r_f (i : ι) : e.r (e.f i) = some i 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') (i : ι)
Goal: e.r (e.f i) = some i
-- ComplexShape.Embedding.f_eq_of_r_eq_some
lemma f_eq_of_r_eq_some {i : ι} {i' : ι'} (hi : e.r i' = some i) :
    e.f i = i' 
Arguments: {ι : Type u_1} {ι' : Type u_2} {c : ComplexShape ι} {c' : ComplexShape ι'} (e : c.Embedding c') {i : ι} {i' : ι'} (hi : e.r i' = some i)
Goal: e.f i = i'
-- ComplexShape.embeddingUpNat_f
@[simps!]
def embeddingUpNat : Embedding (up ℕ) (up ℤ) 
Arguments: (n : ℕ)
Goal: ComplexShape.embeddingUpNat.f n = ↑n
-- ComplexShape.embeddingDownNat_f
@[simps!]
def embeddingDownNat : Embedding (down ℕ) (up ℤ) 
Arguments: (n : ℕ)
Goal: ComplexShape.embeddingDownNat.f n = -↑n
-- ComplexShape.embeddingUpIntGE_f
@[simps!]
def embeddingUpIntGE : Embedding (up ℕ) (up ℤ) 
Arguments: (p : ℤ) (n : ℕ)
Goal: (ComplexShape.embeddingUpIntGE p).f n = p + ↑n
-- ComplexShape.embeddingUpIntLE_f
@[simps!]
def embeddingUpIntLE : Embedding (down ℕ) (up ℤ) 
Arguments: (p : ℤ) (n : ℕ)
Goal: (ComplexShape.embeddingUpIntLE p).f n = p - ↑n
-- HomologicalComplex.shortComplexFunctor'_map_τ₁
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₁ = f.f i
-- HomologicalComplex.shortComplexFunctor'_obj_f
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).f = K.d i j
-- HomologicalComplex.shortComplexFunctor'_obj_X₁
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).X₁ = K.X i
-- HomologicalComplex.shortComplexFunctor'_map_τ₂
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₂ = f.f j
-- HomologicalComplex.shortComplexFunctor'_obj_X₃
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).X₃ = K.X k
-- HomologicalComplex.shortComplexFunctor'_map_τ₃
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).map f).τ₃ = f.f k
-- HomologicalComplex.shortComplexFunctor'_obj_X₂
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).X₂ = K.X j
-- HomologicalComplex.shortComplexFunctor'_obj_g
@[simps]
def shortComplexFunctor' (i j k : ι) : HomologicalComplex C c ⥤ ShortComplex C 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor' C c i j k).obj K).g = K.d j k
-- HomologicalComplex.shortComplexFunctor_map_τ₃
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₃ = f.f (c.next i)
-- HomologicalComplex.shortComplexFunctor_map_τ₁
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₁ = f.f (c.prev i)
-- HomologicalComplex.shortComplexFunctor_obj_g
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor C c i).obj K).g = K.d i (c.next i)
-- HomologicalComplex.shortComplexFunctor_obj_X₃
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor C c i).obj K).X₃ = K.X (c.next i)
-- HomologicalComplex.shortComplexFunctor_obj_X₂
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor C c i).obj K).X₂ = K.X i
-- HomologicalComplex.shortComplexFunctor_obj_f
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor C c i).obj K).f = K.d (c.prev i) i
-- HomologicalComplex.shortComplexFunctor_obj_X₁
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (K : HomologicalComplex C c)
Goal: ((HomologicalComplex.shortComplexFunctor C c i).obj K).X₁ = K.X (c.prev i)
-- HomologicalComplex.shortComplexFunctor_map_τ₂
@[simps!]
noncomputable def shortComplexFunctor (i : ι) 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι)
Goal: ∀ {X Y : HomologicalComplex C c} (f : X ⟶ Y), ((HomologicalComplex.shortComplexFunctor C c i).map f).τ₂ = f.f i
-- HomologicalComplex.natIsoSc'_inv_app_τ₃
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₃ = (X.XIsoOfEq hk).inv
-- HomologicalComplex.natIsoSc'_inv_app_τ₂
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₂ = 𝟙 (X.X j)
-- HomologicalComplex.natIsoSc'_hom_app_τ₂
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₂ = 𝟙 (X.X j)
-- HomologicalComplex.natIsoSc'_hom_app_τ₁
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₁ = (X.XIsoOfEq hi).hom
-- HomologicalComplex.natIsoSc'_inv_app_τ₁
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₁ = (X.XIsoOfEq hi).inv
-- HomologicalComplex.natIsoSc'_hom_app_τ₃
@[simps!]
noncomputable def natIsoSc' (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) :
    shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k 
Arguments: (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i j k : ι) (hi : c.prev j = i) (hk : c.next j = k) (X : HomologicalComplex C c)
Goal: ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₃ = (X.XIsoOfEq hk).hom
-- HomologicalComplex.liftCycles_i
@[reassoc (attr := simp)]
lemma liftCycles_i {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j)
    (hk : k ≫ K.d i j = 0) : K.liftCycles k j hj hk ≫ K.iCycles i = k 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : k ≫ K.d i j = 0)
Goal: K.liftCycles k j hj hk ≫ K.iCycles i = k
-- HomologicalComplex.iCycles_d
@[reassoc (attr := simp)]
lemma iCycles_d : K.iCycles i ≫ K.d i j = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i]
Goal: K.iCycles i ≫ K.d i j = 0
-- HomologicalComplex.toCycles_i
@[reassoc (attr := simp)]
lemma toCycles_i [K.HasHomology j] :
    K.toCycles i j ≫ K.iCycles j = K.d i j 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j]
Goal: K.toCycles i j ≫ K.iCycles j = K.d i j
-- HomologicalComplex.d_toCycles
@[reassoc (attr := simp)]
lemma d_toCycles [K.HasHomology k] :
    K.d i j ≫ K.toCycles j k = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology k]
Goal: K.d i j ≫ K.toCycles j k = 0
-- HomologicalComplex.comp_liftCycles
@[reassoc]
lemma comp_liftCycles {A' A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j)
    (hk : k ≫ K.d i j = 0) (α : A' ⟶ A) :
    α ≫ K.liftCycles k j hj hk = K.liftCycles (α ≫ k) j hj (by rw [assoc, hk, comp_zero]) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A' A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) (hk : k ≫ K.d i j = 0) (α : A' ⟶ A)
Goal: α ≫ K.liftCycles k j hj hk = K.liftCycles (α ≫ k) j hj ⋯
-- HomologicalComplex.liftCycles_homologyπ_eq_zero_of_boundary
@[reassoc]
lemma liftCycles_homologyπ_eq_zero_of_boundary {A : C} (k : A ⟶ K.X i) (j : ι)
    (hj : c.next i = j) {i' : ι} (x : A ⟶ K.X i') (hx : k = x ≫ K.d i' i) :
    K.liftCycles k j hj (by rw [hx, assoc, K.d_comp_d, comp_zero]) ≫ K.homologyπ i = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : A ⟶ K.X i) (j : ι) (hj : c.next i = j) {i' : ι} (x : A ⟶ K.X i') (hx : k = x ≫ K.d i' i)
Goal: K.liftCycles k j hj ⋯ ≫ K.homologyπ i = 0
-- HomologicalComplex.toCycles_comp_homologyπ
@[reassoc (attr := simp)]
lemma toCycles_comp_homologyπ [K.HasHomology j] :
    K.toCycles i j ≫ K.homologyπ j = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology j]
Goal: K.toCycles i j ≫ K.homologyπ j = 0
-- HomologicalComplex.p_descOpcycles
@[reassoc (attr := simp)]
lemma p_descOpcycles {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j)
    (hk : K.d j i ≫ k = 0) : K.pOpcycles i ≫ K.descOpcycles k j hj hk = k 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : K.d j i ≫ k = 0)
Goal: K.pOpcycles i ≫ K.descOpcycles k j hj hk = k
-- HomologicalComplex.d_pOpcycles
@[reassoc (attr := simp)]
lemma d_pOpcycles [K.HasHomology j] : K.d i j ≫ K.pOpcycles j = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i] [K.HasHomology j]
Goal: K.d i j ≫ K.pOpcycles j = 0
-- HomologicalComplex.p_fromOpcycles
@[reassoc (attr := simp)]
lemma p_fromOpcycles :
    K.pOpcycles i ≫ K.fromOpcycles i j = K.d i j 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i]
Goal: K.pOpcycles i ≫ K.fromOpcycles i j = K.d i j
-- HomologicalComplex.fromOpcycles_d
@[reassoc (attr := simp)]
lemma fromOpcycles_d :
    K.fromOpcycles i j ≫ K.d j k = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j k : ι) [K.HasHomology i]
Goal: K.fromOpcycles i j ≫ K.d j k = 0
-- HomologicalComplex.descOpcycles_comp
@[reassoc]
lemma descOpcycles_comp {A A' : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j)
    (hk : K.d j i ≫ k = 0) (α : A ⟶ A') :
    K.descOpcycles k j hj hk ≫ α = K.descOpcycles (k ≫ α) j hj
      (by rw [reassoc_of% hk, zero_comp]) 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A A' : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) (hk : K.d j i ≫ k = 0) (α : A ⟶ A')
Goal: K.descOpcycles k j hj hk ≫ α = K.descOpcycles (k ≫ α) j hj ⋯
-- HomologicalComplex.homologyι_descOpcycles_eq_zero_of_boundary
@[reassoc]
lemma homologyι_descOpcycles_eq_zero_of_boundary {A : C} (k : K.X i ⟶ A) (j : ι)
    (hj : c.prev i = j) {i' : ι} (x : K.X i' ⟶ A) (hx : k = K.d i i' ≫ x) :
    K.homologyι i ≫ K.descOpcycles k j hj (by rw [hx, K.d_comp_d_assoc, zero_comp]) = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) {i : ι} [K.HasHomology i] {A : C} (k : K.X i ⟶ A) (j : ι) (hj : c.prev i = j) {i' : ι} (x : K.X i' ⟶ A) (hx : k = K.d i i' ≫ x)
Goal: K.homologyι i ≫ K.descOpcycles k j hj ⋯ = 0
-- HomologicalComplex.homologyι_comp_fromOpcycles
@[reassoc (attr := simp)]
lemma homologyι_comp_fromOpcycles :
    K.homologyι i ≫ K.fromOpcycles i j = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i j : ι) [K.HasHomology i]
Goal: K.homologyι i ≫ K.fromOpcycles i j = 0
-- HomologicalComplex.cyclesMap_i
@[reassoc (attr := simp)]
lemma cyclesMap_i : cyclesMap φ i ≫ L.iCycles i = K.iCycles i ≫ φ.f i 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} (φ : K ⟶ L) (i : ι) [K.HasHomology i] [L.HasHomology i]
Goal: HomologicalComplex.cyclesMap φ i ≫ L.iCycles i = K.iCycles i ≫ φ.f i
-- HomologicalComplex.p_opcyclesMap
@[reassoc (attr := simp)]
lemma p_opcyclesMap : K.pOpcycles i ≫ opcyclesMap φ i = φ.f i ≫ L.pOpcycles i 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L : HomologicalComplex C c} (φ : K ⟶ L) (i : ι) [K.HasHomology i] [L.HasHomology i]
Goal: K.pOpcycles i ≫ HomologicalComplex.opcyclesMap φ i = φ.f i ≫ L.pOpcycles i
-- HomologicalComplex.homologyMap_id
@[simp]
lemma homologyMap_id : homologyMap (𝟙 K) i = 𝟙 _ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i : ι) [K.HasHomology i]
Goal: HomologicalComplex.homologyMap (𝟙 K) i = 𝟙 (K.homology i)
-- HomologicalComplex.cyclesMap_id
@[simp]
lemma cyclesMap_id : cyclesMap (𝟙 K) i = 𝟙 _ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i : ι) [K.HasHomology i]
Goal: HomologicalComplex.cyclesMap (𝟙 K) i = 𝟙 (K.cycles i)
-- HomologicalComplex.opcyclesMap_id
@[simp]
lemma opcyclesMap_id : opcyclesMap (𝟙 K) i = 𝟙 _ 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K : HomologicalComplex C c) (i : ι) [K.HasHomology i]
Goal: HomologicalComplex.opcyclesMap (𝟙 K) i = 𝟙 (K.opcycles i)
-- HomologicalComplex.homologyMap_comp
@[reassoc]
lemma homologyMap_comp : homologyMap (φ ≫ ψ) i = homologyMap φ i ≫ homologyMap ψ i 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L M : HomologicalComplex C c} (φ : K ⟶ L) (ψ : L ⟶ M) (i : ι) [K.HasHomology i] [L.HasHomology i] [M.HasHomology i]
Goal: HomologicalComplex.homologyMap (φ ≫ ψ) i = HomologicalComplex.homologyMap φ i ≫ HomologicalComplex.homologyMap ψ i
-- HomologicalComplex.cyclesMap_comp
@[reassoc]
lemma cyclesMap_comp : cyclesMap (φ ≫ ψ) i = cyclesMap φ i ≫ cyclesMap ψ i 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L M : HomologicalComplex C c} (φ : K ⟶ L) (ψ : L ⟶ M) (i : ι) [K.HasHomology i] [L.HasHomology i] [M.HasHomology i]
Goal: HomologicalComplex.cyclesMap (φ ≫ ψ) i = HomologicalComplex.cyclesMap φ i ≫ HomologicalComplex.cyclesMap ψ i
-- HomologicalComplex.opcyclesMap_comp
@[reassoc]
lemma opcyclesMap_comp : opcyclesMap (φ ≫ ψ) i = opcyclesMap φ i ≫ opcyclesMap ψ i 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} {K L M : HomologicalComplex C c} (φ : K ⟶ L) (ψ : L ⟶ M) (i : ι) [K.HasHomology i] [L.HasHomology i] [M.HasHomology i]
Goal: HomologicalComplex.opcyclesMap (φ ≫ ψ) i = HomologicalComplex.opcyclesMap φ i ≫ HomologicalComplex.opcyclesMap ψ i
-- HomologicalComplex.homologyMap_zero
@[simp]
lemma homologyMap_zero : homologyMap (0 : K ⟶ L) i = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K L : HomologicalComplex C c) (i : ι) [K.HasHomology i] [L.HasHomology i]
Goal: HomologicalComplex.homologyMap 0 i = 0
-- HomologicalComplex.cyclesMap_zero
@[simp]
lemma cyclesMap_zero : cyclesMap (0 : K ⟶ L) i = 0 
Arguments: {C : Type u_1} [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} {c : ComplexShape ι} (K L : HomologicalComplex C c) (i : ι) [K.HasHomology i] [L.HasHomology i]
Goal: HomologicalComplex.cyclesMap 0 i = 0