Documentation

Mathlib.Algebra.Homology.ShortComplex.LeftHomology

Left Homology of short complexes #

Given a short complex S : ShortComplex C, which consists of two composable maps f : X₁ ⟶ X₂ and g : X₂ ⟶ X₃ such that f ≫ g = 0, we shall define here the "left homology" S.leftHomology of S. For this, we introduce the notion of "left homology data". Such an h : S.LeftHomologyData consists of the data of morphisms i : K ⟶ X₂ and π : KH such that i identifies K with the kernel of g : X₂ ⟶ X₃, and that π identifies H with the cokernel of the induced map f' : X₁ ⟶ K.

When such a S.LeftHomologyData exists, we shall say that [S.HasLeftHomology] and we define S.leftHomology to be the H field of a chosen left homology data. Similarly, we define S.cycles to be the K field.

The dual notion is defined in RightHomologyData.lean. In Homology.lean, when S has two compatible left and right homology data (i.e. they give the same H up to a canonical isomorphism), we shall define [S.HasHomology] and S.homology.

A left homology data for a short complex S consists of morphisms i : K ⟶ S.X₂ and π : KH such that i identifies K to the kernel of g : S.X₂ ⟶ S.X₃, and that π identifies H to the cokernel of the induced map f' : S.X₁ ⟶ K

Instances For

    The chosen kernels and cokernels of the limits API give a LeftHomologyData

    Equations
      Instances For

        Any morphism k : A ⟶ S.X₂ that is a cycle (i.e. k ≫ S.g = 0) lifts to a morphism A ⟶ K

        Equations
          Instances For

            The (left) homology class A ⟶ H attached to a cycle k : A ⟶ S.X₂

            Equations
              Instances For

                Given h : LeftHomologyData S, this is morphism S.X₁ ⟶ h.K induced by S.f : S.X₁ ⟶ S.X₂ and the fact that h.K is a kernel of S.g : S.X₂ ⟶ S.X₃.

                Equations
                  Instances For

                    For h : S.LeftHomologyData, this is a restatement of h., saying that π : h.K ⟶ h.H is a cokernel of h.f' : S.X₁ ⟶ h.K.

                    Equations
                      Instances For

                        The morphism H ⟶ A induced by a morphism k : K ⟶ A such that f' ≫ k = 0

                        Equations
                          Instances For

                            When the second map S.g is zero, this is the left homology data on S given by any colimit cokernel cofork of S.f

                            Equations
                              Instances For

                                When the second map S.g is zero, this is the left homology data on S given by the chosen cokernel S.f

                                Equations
                                  Instances For

                                    When the first map S.f is zero, this is the left homology data on S given by any limit kernel fork of S.g

                                    Equations
                                      Instances For

                                        When the first map S.f is zero, this is the left homology data on S given by the chosen kernel S.g

                                        Equations
                                          Instances For

                                            When both S.f and S.g are zero, the middle object S.X₂ gives a left homology data on S

                                            Equations
                                              Instances For

                                                Given a left homology data h of a short complex S, we can construct another left homology data by choosing another kernel and cokernel that are isomorphic to the ones in h.

                                                Equations
                                                  Instances For
                                                    @[simp]
                                                    theorem CategoryTheory.ShortComplex.LeftHomologyData.copy_i {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S : ShortComplex C} (h : S.LeftHomologyData) {K' H' : C} (eK : K' h.K) (eH : H' h.H) :
                                                    (h.copy eK eH).i = CategoryStruct.comp eK.hom h.i
                                                    @[simp]
                                                    theorem CategoryTheory.ShortComplex.LeftHomologyData.copy_K {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S : ShortComplex C} (h : S.LeftHomologyData) {K' H' : C} (eK : K' h.K) (eH : H' h.H) :
                                                    (h.copy eK eH).K = K'
                                                    @[simp]
                                                    theorem CategoryTheory.ShortComplex.LeftHomologyData.copy_H {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S : ShortComplex C} (h : S.LeftHomologyData) {K' H' : C} (eK : K' h.K) (eH : H' h.H) :
                                                    (h.copy eK eH).H = H'

                                                    A short complex S has left homology when there exists a S.LeftHomologyData

                                                    Instances

                                                      A chosen S.LeftHomologyData for a short complex S that has left homology

                                                      Equations
                                                        Instances For
                                                          instance CategoryTheory.ShortComplex.HasLeftHomology.of_hasCokernel {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {X Y : C} (f : X Y) (Z : C) [Limits.HasCokernel f] :
                                                          { X₁ := X, X₂ := Y, X₃ := Z, f := f, g := 0, zero := }.HasLeftHomology
                                                          instance CategoryTheory.ShortComplex.HasLeftHomology.of_hasKernel {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {Y Z : C} (g : Y Z) (X : C) [Limits.HasKernel g] :
                                                          { X₁ := X, X₂ := Y, X₃ := Z, f := 0, g := g, zero := }.HasLeftHomology
                                                          instance CategoryTheory.ShortComplex.HasLeftHomology.of_zeros {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] (X Y Z : C) :
                                                          { X₁ := X, X₂ := Y, X₃ := Z, f := 0, g := 0, zero := }.HasLeftHomology
                                                          structure CategoryTheory.ShortComplex.LeftHomologyMapData {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                          Type u_2

                                                          Given left homology data h₁ and h₂ for two short complexes S₁ and S₂, a LeftHomologyMapData for a morphism φ : S₁ ⟶ S₂ consists of a description of the induced morphisms on the K (cycles) and H (left homology) fields of h₁ and h₂.

                                                          Instances For
                                                            @[simp]
                                                            @[simp]
                                                            @[simp]
                                                            theorem CategoryTheory.ShortComplex.LeftHomologyMapData.commπ_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} {φ : S₁ S₂} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} (self : LeftHomologyMapData φ h₁ h₂) {Z : C} (h : h₂.H Z) :

                                                            The left homology map data associated to the zero morphism between two short complexes.

                                                            Equations
                                                              Instances For

                                                                The left homology map data associated to the identity morphism of a short complex.

                                                                Equations
                                                                  Instances For
                                                                    def CategoryTheory.ShortComplex.LeftHomologyMapData.comp {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} {φ : S₁ S₂} {φ' : S₂ S₃} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} {h₃ : S₃.LeftHomologyData} (ψ : LeftHomologyMapData φ h₁ h₂) (ψ' : LeftHomologyMapData φ' h₂ h₃) :

                                                                    The composition of left homology map data.

                                                                    Equations
                                                                      Instances For
                                                                        @[simp]
                                                                        theorem CategoryTheory.ShortComplex.LeftHomologyMapData.comp_φH {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} {φ : S₁ S₂} {φ' : S₂ S₃} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} {h₃ : S₃.LeftHomologyData} (ψ : LeftHomologyMapData φ h₁ h₂) (ψ' : LeftHomologyMapData φ' h₂ h₃) :
                                                                        @[simp]
                                                                        theorem CategoryTheory.ShortComplex.LeftHomologyMapData.comp_φK {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} {φ : S₁ S₂} {φ' : S₂ S₃} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} {h₃ : S₃.LeftHomologyData} (ψ : LeftHomologyMapData φ h₁ h₂) (ψ' : LeftHomologyMapData φ' h₂ h₃) :
                                                                        Equations
                                                                          theorem CategoryTheory.ShortComplex.LeftHomologyMapData.congr_φH {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} {φ : S₁ S₂} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} {γ₁ γ₂ : LeftHomologyMapData φ h₁ h₂} (eq : γ₁ = γ₂) :
                                                                          γ₁.φH = γ₂.φH
                                                                          theorem CategoryTheory.ShortComplex.LeftHomologyMapData.congr_φK {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} {φ : S₁ S₂} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} {γ₁ γ₂ : LeftHomologyMapData φ h₁ h₂} (eq : γ₁ = γ₂) :
                                                                          γ₁.φK = γ₂.φK
                                                                          def CategoryTheory.ShortComplex.LeftHomologyMapData.ofZeros {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (hg₁ : S₁.g = 0) (hf₂ : S₂.f = 0) (hg₂ : S₂.g = 0) :

                                                                          When S₁.f, S₁.g, S₂.f and S₂.g are all zero, the action on left homology of a morphism φ : S₁ ⟶ S₂ is given by the action φ.τ₂ on the middle objects.

                                                                          Equations
                                                                            Instances For
                                                                              @[simp]
                                                                              theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofZeros_φH {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (hg₁ : S₁.g = 0) (hf₂ : S₂.f = 0) (hg₂ : S₂.g = 0) :
                                                                              (ofZeros φ hf₁ hg₁ hf₂ hg₂).φH = φ.τ₂
                                                                              @[simp]
                                                                              theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofZeros_φK {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (hg₁ : S₁.g = 0) (hf₂ : S₂.f = 0) (hg₂ : S₂.g = 0) :
                                                                              (ofZeros φ hf₁ hg₁ hf₂ hg₂).φK = φ.τ₂
                                                                              def CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsColimitCokernelCofork {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hg₁ : S₁.g = 0) (c₁ : Limits.CokernelCofork S₁.f) (hc₁ : Limits.IsColimit c₁) (hg₂ : S₂.g = 0) (c₂ : Limits.CokernelCofork S₂.f) (hc₂ : Limits.IsColimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp φ.τ₂ (Limits.Cofork.π c₂) = CategoryStruct.comp (Limits.Cofork.π c₁) f) :

                                                                              When S₁.g and S₂.g are zero and we have chosen colimit cokernel coforks c₁ and c₂ for S₁.f and S₂.f respectively, the action on left homology of a morphism φ : S₁ ⟶ S₂ of short complexes is given by the unique morphism f : c₁.pt ⟶ c₂.pt such that φ.τ₂ ≫ c₂.π = c₁.π ≫ f.

                                                                              Equations
                                                                                Instances For
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsColimitCokernelCofork_φH {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hg₁ : S₁.g = 0) (c₁ : Limits.CokernelCofork S₁.f) (hc₁ : Limits.IsColimit c₁) (hg₂ : S₂.g = 0) (c₂ : Limits.CokernelCofork S₂.f) (hc₂ : Limits.IsColimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp φ.τ₂ (Limits.Cofork.π c₂) = CategoryStruct.comp (Limits.Cofork.π c₁) f) :
                                                                                  (ofIsColimitCokernelCofork φ hg₁ c₁ hc₁ hg₂ c₂ hc₂ f comm).φH = f
                                                                                  @[simp]
                                                                                  theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsColimitCokernelCofork_φK {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hg₁ : S₁.g = 0) (c₁ : Limits.CokernelCofork S₁.f) (hc₁ : Limits.IsColimit c₁) (hg₂ : S₂.g = 0) (c₂ : Limits.CokernelCofork S₂.f) (hc₂ : Limits.IsColimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp φ.τ₂ (Limits.Cofork.π c₂) = CategoryStruct.comp (Limits.Cofork.π c₁) f) :
                                                                                  (ofIsColimitCokernelCofork φ hg₁ c₁ hc₁ hg₂ c₂ hc₂ f comm).φK = φ.τ₂
                                                                                  def CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsLimitKernelFork {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (c₁ : Limits.KernelFork S₁.g) (hc₁ : Limits.IsLimit c₁) (hf₂ : S₂.f = 0) (c₂ : Limits.KernelFork S₂.g) (hc₂ : Limits.IsLimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp (Limits.Fork.ι c₁) φ.τ₂ = CategoryStruct.comp f (Limits.Fork.ι c₂)) :

                                                                                  When S₁.f and S₂.f are zero and we have chosen limit kernel forks c₁ and c₂ for S₁.g and S₂.g respectively, the action on left homology of a morphism φ : S₁ ⟶ S₂ of short complexes is given by the unique morphism f : c₁.pt ⟶ c₂.pt such that c₁.ι ≫ φ.τ₂ = f ≫ c₂.ι.

                                                                                  Equations
                                                                                    Instances For
                                                                                      @[simp]
                                                                                      theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsLimitKernelFork_φK {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (c₁ : Limits.KernelFork S₁.g) (hc₁ : Limits.IsLimit c₁) (hf₂ : S₂.f = 0) (c₂ : Limits.KernelFork S₂.g) (hc₂ : Limits.IsLimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp (Limits.Fork.ι c₁) φ.τ₂ = CategoryStruct.comp f (Limits.Fork.ι c₂)) :
                                                                                      (ofIsLimitKernelFork φ hf₁ c₁ hc₁ hf₂ c₂ hc₂ f comm).φK = f
                                                                                      @[simp]
                                                                                      theorem CategoryTheory.ShortComplex.LeftHomologyMapData.ofIsLimitKernelFork_φH {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (hf₁ : S₁.f = 0) (c₁ : Limits.KernelFork S₁.g) (hc₁ : Limits.IsLimit c₁) (hf₂ : S₂.f = 0) (c₂ : Limits.KernelFork S₂.g) (hc₂ : Limits.IsLimit c₂) (f : c₁.pt c₂.pt) (comm : CategoryStruct.comp (Limits.Fork.ι c₁) φ.τ₂ = CategoryStruct.comp f (Limits.Fork.ι c₂)) :
                                                                                      (ofIsLimitKernelFork φ hf₁ c₁ hc₁ hf₂ c₂ hc₂ f comm).φH = f

                                                                                      When both maps S.f and S.g of a short complex S are zero, this is the left homology map data (for the identity of S) which relates the left homology data ofZeros and ofIsColimitCokernelCofork.

                                                                                      Equations
                                                                                        Instances For

                                                                                          When both maps S.f and S.g of a short complex S are zero, this is the left homology map data (for the identity of S) which relates the left homology data LeftHomologyData.ofIsLimitKernelFork and ofZeros .

                                                                                          Equations
                                                                                            Instances For

                                                                                              The left homology of a short complex, given by the H field of a chosen left homology data.

                                                                                              Equations
                                                                                                Instances For

                                                                                                  The cycles of a short complex, given by the K field of a chosen left homology data.

                                                                                                  Equations
                                                                                                    Instances For

                                                                                                      The "homology class" map S.cycles ⟶ S.leftHomology.

                                                                                                      Equations
                                                                                                        Instances For

                                                                                                          The inclusion S.cycles ⟶ S.X₂.

                                                                                                          Equations
                                                                                                            Instances For

                                                                                                              The "boundaries" map S.X₁ ⟶ S.cycles. (Note that in this homology API, we make no use of the "image" of this morphism, which under some categorical assumptions would be a subobject of S.X₂ contained in S.cycles.)

                                                                                                              Equations
                                                                                                                Instances For

                                                                                                                  When S.g = 0, this is the canonical isomorphism S.cycles ≅ S.X₂ induced by S.iCycles.

                                                                                                                  Equations
                                                                                                                    Instances For

                                                                                                                      When S.f = 0, this is the canonical isomorphism S.cycles ≅ S.leftHomology induced by S.leftHomologyπ.

                                                                                                                      Equations
                                                                                                                        Instances For

                                                                                                                          The (unique) left homology map data associated to a morphism of short complexes that are both equipped with left homology data.

                                                                                                                          Equations
                                                                                                                            Instances For
                                                                                                                              def CategoryTheory.ShortComplex.leftHomologyMap' {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                              h₁.H h₂.H

                                                                                                                              Given a morphism φ : S₁ ⟶ S₂ of short complexes and left homology data h₁ and h₂ for S₁ and S₂ respectively, this is the induced left homology map h₁.H ⟶ h₁.H.

                                                                                                                              Equations
                                                                                                                                Instances For
                                                                                                                                  def CategoryTheory.ShortComplex.cyclesMap' {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                  h₁.K h₂.K

                                                                                                                                  Given a morphism φ : S₁ ⟶ S₂ of short complexes and left homology data h₁ and h₂ for S₁ and S₂ respectively, this is the induced morphism h₁.K ⟶ h₁.K on cycles.

                                                                                                                                  Equations
                                                                                                                                    Instances For
                                                                                                                                      @[simp]
                                                                                                                                      theorem CategoryTheory.ShortComplex.cyclesMap'_i {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                      @[simp]
                                                                                                                                      theorem CategoryTheory.ShortComplex.cyclesMap'_i_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) {Z : C} (h : S₂.X₂ Z) :
                                                                                                                                      @[simp]
                                                                                                                                      theorem CategoryTheory.ShortComplex.f'_cyclesMap' {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                      @[simp]
                                                                                                                                      theorem CategoryTheory.ShortComplex.f'_cyclesMap'_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) {Z : C} (h : h₂.K Z) :
                                                                                                                                      @[simp]
                                                                                                                                      @[simp]

                                                                                                                                      The (left) homology map S₁.leftHomology ⟶ S₂.leftHomology induced by a morphism S₁ ⟶ S₂ of short complexes.

                                                                                                                                      Equations
                                                                                                                                        Instances For
                                                                                                                                          noncomputable def CategoryTheory.ShortComplex.cyclesMap {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} [S₁.HasLeftHomology] [S₂.HasLeftHomology] (φ : S₁ S₂) :
                                                                                                                                          S₁.cycles S₂.cycles

                                                                                                                                          The morphism S₁.cycles ⟶ S₂.cycles induced by a morphism S₁ ⟶ S₂ of short complexes.

                                                                                                                                          Equations
                                                                                                                                            Instances For
                                                                                                                                              theorem CategoryTheory.ShortComplex.LeftHomologyMapData.cyclesMap'_eq {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} {φ : S₁ S₂} {h₁ : S₁.LeftHomologyData} {h₂ : S₂.LeftHomologyData} (γ : LeftHomologyMapData φ h₁ h₂) :
                                                                                                                                              cyclesMap' φ h₁ h₂ = γ.φK
                                                                                                                                              @[simp]
                                                                                                                                              theorem CategoryTheory.ShortComplex.leftHomologyMap'_comp {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) (h₃ : S₃.LeftHomologyData) :
                                                                                                                                              leftHomologyMap' (CategoryStruct.comp φ₁ φ₂) h₁ h₃ = CategoryStruct.comp (leftHomologyMap' φ₁ h₁ h₂) (leftHomologyMap' φ₂ h₂ h₃)
                                                                                                                                              theorem CategoryTheory.ShortComplex.leftHomologyMap'_comp_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) (h₃ : S₃.LeftHomologyData) {Z : C} (h : h₃.H Z) :
                                                                                                                                              theorem CategoryTheory.ShortComplex.cyclesMap'_comp {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) (h₃ : S₃.LeftHomologyData) :
                                                                                                                                              cyclesMap' (CategoryStruct.comp φ₁ φ₂) h₁ h₃ = CategoryStruct.comp (cyclesMap' φ₁ h₁ h₂) (cyclesMap' φ₂ h₂ h₃)
                                                                                                                                              theorem CategoryTheory.ShortComplex.cyclesMap'_comp_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) (h₃ : S₃.LeftHomologyData) {Z : C} (h : h₃.K Z) :
                                                                                                                                              CategoryStruct.comp (cyclesMap' (CategoryStruct.comp φ₁ φ₂) h₁ h₃) h = CategoryStruct.comp (cyclesMap' φ₁ h₁ h₂) (CategoryStruct.comp (cyclesMap' φ₂ h₂ h₃) h)
                                                                                                                                              @[simp]
                                                                                                                                              theorem CategoryTheory.ShortComplex.cyclesMap_comp {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} [S₁.HasLeftHomology] [S₂.HasLeftHomology] [S₃.HasLeftHomology] (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) :
                                                                                                                                              theorem CategoryTheory.ShortComplex.cyclesMap_comp_assoc {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ S₃ : ShortComplex C} [S₁.HasLeftHomology] [S₂.HasLeftHomology] [S₃.HasLeftHomology] (φ₁ : S₁ S₂) (φ₂ : S₂ S₃) {Z : C} (h : S₃.cycles Z) :
                                                                                                                                              def CategoryTheory.ShortComplex.leftHomologyMapIso' {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                              h₁.H h₂.H

                                                                                                                                              An isomorphism of short complexes S₁ ≅ S₂ induces an isomorphism on the H fields of left homology data of S₁ and S₂.

                                                                                                                                              Equations
                                                                                                                                                Instances For
                                                                                                                                                  @[simp]
                                                                                                                                                  theorem CategoryTheory.ShortComplex.leftHomologyMapIso'_hom {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                  (leftHomologyMapIso' e h₁ h₂).hom = leftHomologyMap' e.hom h₁ h₂
                                                                                                                                                  @[simp]
                                                                                                                                                  theorem CategoryTheory.ShortComplex.leftHomologyMapIso'_inv {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                  (leftHomologyMapIso' e h₁ h₂).inv = leftHomologyMap' e.inv h₂ h₁
                                                                                                                                                  def CategoryTheory.ShortComplex.cyclesMapIso' {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                  h₁.K h₂.K

                                                                                                                                                  An isomorphism of short complexes S₁ ≅ S₂ induces an isomorphism on the K fields of left homology data of S₁ and S₂.

                                                                                                                                                  Equations
                                                                                                                                                    Instances For
                                                                                                                                                      @[simp]
                                                                                                                                                      theorem CategoryTheory.ShortComplex.cyclesMapIso'_inv {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                      (cyclesMapIso' e h₁ h₂).inv = cyclesMap' e.inv h₂ h₁
                                                                                                                                                      @[simp]
                                                                                                                                                      theorem CategoryTheory.ShortComplex.cyclesMapIso'_hom {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                      (cyclesMapIso' e h₁ h₂).hom = cyclesMap' e.hom h₁ h₂
                                                                                                                                                      instance CategoryTheory.ShortComplex.isIso_cyclesMap'_of_isIso {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) [IsIso φ] (h₁ : S₁.LeftHomologyData) (h₂ : S₂.LeftHomologyData) :
                                                                                                                                                      IsIso (cyclesMap' φ h₁ h₂)

                                                                                                                                                      The isomorphism S₁.leftHomology ≅ S₂.leftHomology induced by an isomorphism of short complexes S₁ ≅ S₂.

                                                                                                                                                      Equations
                                                                                                                                                        Instances For
                                                                                                                                                          noncomputable def CategoryTheory.ShortComplex.cyclesMapIso {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (e : S₁ S₂) [S₁.HasLeftHomology] [S₂.HasLeftHomology] :
                                                                                                                                                          S₁.cycles S₂.cycles

                                                                                                                                                          The isomorphism S₁.cycles ≅ S₂.cycles induced by an isomorphism of short complexes S₁ ≅ S₂.

                                                                                                                                                          Equations
                                                                                                                                                            Instances For

                                                                                                                                                              The isomorphism S.leftHomology ≅ h.H induced by a left homology data h for a short complex S.

                                                                                                                                                              Equations
                                                                                                                                                                Instances For

                                                                                                                                                                  The isomorphism S.cycles ≅ h.K induced by a left homology data h for a short complex S.

                                                                                                                                                                  Equations
                                                                                                                                                                    Instances For

                                                                                                                                                                      The left homology functor ShortComplex C ⥤ C, where the left homology of a short complex S is understood as a cokernel of the obvious map S.toCycles : S.X₁ ⟶ S.cycles where S.cycles is a kernel of S.g : S.X₂ ⟶ S.X₃.

                                                                                                                                                                      Equations
                                                                                                                                                                        Instances For

                                                                                                                                                                          The cycles functor ShortComplex C ⥤ C which sends a short complex S to S.cycles which is a kernel of S.g : S.X₂ ⟶ S.X₃.

                                                                                                                                                                          Equations
                                                                                                                                                                            Instances For

                                                                                                                                                                              The natural transformation S.cycles ⟶ S.leftHomology for all short complexes S.

                                                                                                                                                                              Equations
                                                                                                                                                                                Instances For

                                                                                                                                                                                  The natural transformation S.cycles ⟶ S.X₂ for all short complexes S.

                                                                                                                                                                                  Equations
                                                                                                                                                                                    Instances For

                                                                                                                                                                                      The natural transformation S.X₁ ⟶ S.cycles for all short complexes S.

                                                                                                                                                                                      Equations
                                                                                                                                                                                        Instances For

                                                                                                                                                                                          If φ : S₁ ⟶ S₂ is a morphism of short complexes such that φ.τ₁ is epi, φ.τ₂ is an iso and φ.τ₃ is mono, then a left homology data for S₁ induces a left homology data for S₂ with the same K and H fields. The inverse construction is ofEpiOfIsIsoOfMono'.

                                                                                                                                                                                          Equations
                                                                                                                                                                                            Instances For

                                                                                                                                                                                              If φ : S₁ ⟶ S₂ is a morphism of short complexes such that φ.τ₁ is epi, φ.τ₂ is an iso and φ.τ₃ is mono, then a left homology data for S₂ induces a left homology data for S₁ with the same K and H fields. The inverse construction is ofEpiOfIsIsoOfMono.

                                                                                                                                                                                              Equations
                                                                                                                                                                                                Instances For

                                                                                                                                                                                                  If e : S₁ ≅ S₂ is an isomorphism of short complexes and h₁ : LeftHomologyData S₁, this is the left homology data for S₂ deduced from the isomorphism.

                                                                                                                                                                                                  Equations
                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                      This left homology map data expresses compatibilities of the left homology data constructed by LeftHomologyData.ofEpiOfIsIsoOfMono

                                                                                                                                                                                                      Equations
                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                          This left homology map data expresses compatibilities of the left homology data constructed by LeftHomologyData.ofEpiOfIsIsoOfMono'

                                                                                                                                                                                                          Equations
                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                              If a morphism of short complexes φ : S₁ ⟶ S₂ is such that φ.τ₁ is epi, φ.τ₂ is an iso, and φ.τ₃ is mono, then the induced morphism on left homology is an isomorphism.

                                                                                                                                                                                                              A morphism k : A ⟶ S.X₂ such that k ≫ S.g = 0 lifts to a morphism A ⟶ S.cycles.

                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                  Via S.iCycles : S.cycles ⟶ S.X₂, the object S.cycles identifies to the kernel of S.g : S.X₂ ⟶ S.X₃.

                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                                      The canonical isomorphism S.cycles ≅ kernel S.g.

                                                                                                                                                                                                                      Equations
                                                                                                                                                                                                                        Instances For

                                                                                                                                                                                                                          The morphism A ⟶ S.leftHomology obtained from a morphism k : A ⟶ S.X₂ such that k ≫ S.g = 0.

                                                                                                                                                                                                                          Equations
                                                                                                                                                                                                                            Instances For

                                                                                                                                                                                                                              Via S.leftHomologyπ : S.cycles ⟶ S.leftHomology, the object S.leftHomology identifies to the cokernel of S.toCycles : S.X₁ ⟶ S.cycles.

                                                                                                                                                                                                                              Equations
                                                                                                                                                                                                                                Instances For

                                                                                                                                                                                                                                  The left homology of a short complex S identifies to the cokernel of the canonical morphism S.X₁ ⟶ kernel S.g.

                                                                                                                                                                                                                                  Equations
                                                                                                                                                                                                                                    Instances For

                                                                                                                                                                                                                                      The following lemmas and instance gives a sufficient condition for a morphism of short complexes to induce an isomorphism on cycles.

                                                                                                                                                                                                                                      theorem CategoryTheory.ShortComplex.isIso_cyclesMap'_of_isIso_of_mono {C : Type u_1} [Category.{u_2, u_1} C] [Limits.HasZeroMorphisms C] {S₁ S₂ : ShortComplex C} (φ : S₁ S₂) (h₂ : IsIso φ.τ₂) (h₃ : Mono φ.τ₃) (h₁ : S₁.LeftHomologyData) (h₂✝ : S₂.LeftHomologyData) :
                                                                                                                                                                                                                                      IsIso (cyclesMap' φ h₁ h₂✝)