Quasi-isomorphisms of short complexes #
This file introduces the typeclass QuasiIso φ
for a morphism φ : S₁ ⟶ S₂
of short complexes (which have homology): the condition is that the induced
morphism homologyMap φ
in homology is an isomorphism.
class
CategoryTheory.ShortComplex.QuasiIso
{C : Type u_1}
[CategoryTheory.Category.{u_2, u_1} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
:
A morphism φ : S₁ ⟶ S₂
of short complexes that have homology is a quasi-isomorphism if
the induced map homologyMap φ : S₁.homology ⟶ S₂.homology
is an isomorphism.
the homology map is an isomorphism
Instances
instance
CategoryTheory.ShortComplex.QuasiIso.isIso
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
[CategoryTheory.ShortComplex.QuasiIso φ]
:
Equations
- ⋯ = ⋯
theorem
CategoryTheory.ShortComplex.quasiIso_iff
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
:
instance
CategoryTheory.ShortComplex.quasiIso_of_isIso
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
[CategoryTheory.IsIso φ]
:
Equations
- ⋯ = ⋯
instance
CategoryTheory.ShortComplex.quasiIso_comp
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₂ ⟶ S₃)
[hφ : CategoryTheory.ShortComplex.QuasiIso φ]
[hφ' : CategoryTheory.ShortComplex.QuasiIso φ']
:
Equations
- ⋯ = ⋯
theorem
CategoryTheory.ShortComplex.quasiIso_of_comp_left
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₂ ⟶ S₃)
[hφ : CategoryTheory.ShortComplex.QuasiIso φ]
[hφφ' : CategoryTheory.ShortComplex.QuasiIso (CategoryTheory.CategoryStruct.comp φ φ')]
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_comp_left
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₂ ⟶ S₃)
[hφ : CategoryTheory.ShortComplex.QuasiIso φ]
:
theorem
CategoryTheory.ShortComplex.quasiIso_of_comp_right
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₂ ⟶ S₃)
[hφ' : CategoryTheory.ShortComplex.QuasiIso φ']
[hφφ' : CategoryTheory.ShortComplex.QuasiIso (CategoryTheory.CategoryStruct.comp φ φ')]
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_comp_right
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₂ ⟶ S₃)
[hφ' : CategoryTheory.ShortComplex.QuasiIso φ']
:
theorem
CategoryTheory.ShortComplex.quasiIso_of_arrow_mk_iso
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ S₄ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
[S₄.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₃ ⟶ S₄)
(e : CategoryTheory.Arrow.mk φ ≅ CategoryTheory.Arrow.mk φ')
[hφ : CategoryTheory.ShortComplex.QuasiIso φ]
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_of_arrow_mk_iso
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ S₃ S₄ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
[S₃.HasHomology]
[S₄.HasHomology]
(φ : S₁ ⟶ S₂)
(φ' : S₃ ⟶ S₄)
(e : CategoryTheory.Arrow.mk φ ≅ CategoryTheory.Arrow.mk φ')
:
theorem
CategoryTheory.ShortComplex.LeftHomologyMapData.quasiIso_iff
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
{φ : S₁ ⟶ S₂}
{h₁ : S₁.LeftHomologyData}
{h₂ : S₂.LeftHomologyData}
(γ : CategoryTheory.ShortComplex.LeftHomologyMapData φ h₁ h₂)
:
theorem
CategoryTheory.ShortComplex.RightHomologyMapData.quasiIso_iff
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
{φ : S₁ ⟶ S₂}
{h₁ : S₁.RightHomologyData}
{h₂ : S₂.RightHomologyData}
(γ : CategoryTheory.ShortComplex.RightHomologyMapData φ h₁ h₂)
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_isIso_leftHomologyMap'
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
(h₁ : S₁.LeftHomologyData)
(h₂ : S₂.LeftHomologyData)
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_isIso_rightHomologyMap'
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
(h₁ : S₁.RightHomologyData)
(h₂ : S₂.RightHomologyData)
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_isIso_homologyMap'
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
(h₁ : S₁.HomologyData)
(h₂ : S₂.HomologyData)
:
theorem
CategoryTheory.ShortComplex.quasiIso_of_epi_of_isIso_of_mono
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
[CategoryTheory.Epi φ.τ₁]
[CategoryTheory.IsIso φ.τ₂]
[CategoryTheory.Mono φ.τ₃]
:
theorem
CategoryTheory.ShortComplex.quasiIso_opMap_iff
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
:
theorem
CategoryTheory.ShortComplex.quasiIso_opMap
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
[CategoryTheory.ShortComplex.QuasiIso φ]
:
theorem
CategoryTheory.ShortComplex.quasiIso_unopMap
{C : Type u_1}
[CategoryTheory.Category.{u_2, u_1} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex Cᵒᵖ}
[S₁.HasHomology]
[S₂.HasHomology]
[S₁.unop.HasHomology]
[S₂.unop.HasHomology]
(φ : S₁ ⟶ S₂)
[CategoryTheory.ShortComplex.QuasiIso φ]
:
theorem
CategoryTheory.ShortComplex.quasiIso_iff_isIso_liftCycles
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
(hf₁ : S₁.f = 0)
(hg₁ : S₁.g = 0)
(hf₂ : S₂.f = 0)
:
CategoryTheory.ShortComplex.QuasiIso φ ↔ CategoryTheory.IsIso (S₂.liftCycles φ.τ₂ ⋯)
theorem
CategoryTheory.ShortComplex.quasiIso_iff_isIso_descOpcycles
{C : Type u_2}
[CategoryTheory.Category.{u_1, u_2} C]
[CategoryTheory.Limits.HasZeroMorphisms C]
{S₁ S₂ : CategoryTheory.ShortComplex C}
[S₁.HasHomology]
[S₂.HasHomology]
(φ : S₁ ⟶ S₂)
(hg₁ : S₁.g = 0)
(hf₂ : S₂.f = 0)
(hg₂ : S₂.g = 0)
:
CategoryTheory.ShortComplex.QuasiIso φ ↔ CategoryTheory.IsIso (S₁.descOpcycles φ.τ₂ ⋯)