Documentation

Mathlib.Algebra.Homology.ShortComplex.ConcreteCategory

Exactness of short complexes in concrete abelian categories #

If an additive concrete category C has an additive forgetful functor to Ab which preserves homology, then a short complex S in C is exact if and only if it is so after applying the functor forget₂ C Ab.

@[simp]
theorem CategoryTheory.ShortComplex.zero_apply {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Limits.HasZeroMorphisms C] [(forget₂ C Ab).PreservesZeroMorphisms] (S : ShortComplex C) (x : ((forget₂ C Ab).obj S.X₁)) :
((forget₂ C Ab).map S.g) (((forget₂ C Ab).map S.f) x) = 0
theorem CategoryTheory.Preadditive.mono_iff_injective {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] [Limits.HasZeroObject C] {X Y : C} (f : X Y) :
theorem CategoryTheory.Preadditive.mono_iff_injective' {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] [Limits.HasZeroObject C] {X Y : C} (f : X Y) :
theorem CategoryTheory.Preadditive.epi_iff_surjective {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] [Limits.HasZeroObject C] {X Y : C} (f : X Y) :
theorem CategoryTheory.Preadditive.epi_iff_surjective' {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] [Limits.HasZeroObject C] {X Y : C} (f : X Y) :
theorem CategoryTheory.ShortComplex.exact_iff_exact_map_forget₂ {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (S : ShortComplex C) [S.HasHomology] :
S.Exact (S.map (forget₂ C Ab)).Exact
theorem CategoryTheory.ShortComplex.exact_iff_of_hasForget {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (S : ShortComplex C) [S.HasHomology] :
S.Exact ∀ (x₂ : ((forget₂ C Ab).obj S.X₂)), ((forget₂ C Ab).map S.g) x₂ = 0∃ (x₁ : ((forget₂ C Ab).obj S.X₁)), ((forget₂ C Ab).map S.f) x₁ = x₂
theorem CategoryTheory.ShortComplex.ShortExact.injective_f {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] {S : ShortComplex C} [Limits.HasZeroObject C] (hS : S.ShortExact) :
theorem CategoryTheory.ShortComplex.ShortExact.surjective_g {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] {S : ShortComplex C} [Limits.HasZeroObject C] (hS : S.ShortExact) :
noncomputable def CategoryTheory.ShortComplex.cyclesMk {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (S : ShortComplex C) [S.HasHomology] (x₂ : ((forget₂ C Ab).obj S.X₂)) (hx₂ : ((forget₂ C Ab).map S.g) x₂ = 0) :
((forget₂ C Ab).obj S.cycles)

Constructor for cycles of short complexes in a concrete category.

Equations
Instances For
    @[simp]
    theorem CategoryTheory.ShortComplex.i_cyclesMk {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Preadditive C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (S : ShortComplex C) [S.HasHomology] (x₂ : ((forget₂ C Ab).obj S.X₂)) (hx₂ : ((forget₂ C Ab).map S.g) x₂ = 0) :
    ((forget₂ C Ab).map S.iCycles) (S.cyclesMk x₂ hx₂) = x₂
    theorem CategoryTheory.ShortComplex.SnakeInput.δ_apply {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Abelian C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (D : SnakeInput C) (x₃ : (forget C).obj D.L₀.X₃) (x₂ : (forget C).obj D.L₁.X₂) (x₁ : (forget C).obj D.L₂.X₁) (h₂ : D.L₁.g x₂ = D.v₀₁.τ₃ x₃) (h₁ : D.L₂.f x₁ = D.v₁₂.τ₂ x₂) :
    D x₃ = D.v₂₃.τ₁ x₁

    This lemma allows the computation of the connecting homomorphism D.δ when D : SnakeInput C and C is a concrete category.

    theorem CategoryTheory.ShortComplex.SnakeInput.δ_apply' {C : Type u} [Category.{v, u} C] [HasForget C] [HasForget₂ C Ab] [Abelian C] [(forget₂ C Ab).Additive] [(forget₂ C Ab).PreservesHomology] (D : SnakeInput C) (x₃ : ((forget₂ C Ab).obj D.L₀.X₃)) (x₂ : ((forget₂ C Ab).obj D.L₁.X₂)) (x₁ : ((forget₂ C Ab).obj D.L₂.X₁)) (h₂ : ((forget₂ C Ab).map D.L₁.g) x₂ = ((forget₂ C Ab).map D.v₀₁.τ₃) x₃) (h₁ : ((forget₂ C Ab).map D.L₂.f) x₁ = ((forget₂ C Ab).map D.v₁₂.τ₂) x₂) :
    ((forget₂ C Ab).map D) x₃ = ((forget₂ C Ab).map D.v₂₃.τ₁) x₁

    This lemma allows the computation of the connecting homomorphism D.δ when D : SnakeInput C and C is a concrete category.