Documentation

Mathlib.Algebra.Homology.Embedding.Connect

Connecting a chain complex and a cochain complex #

Given a chain complex K: ... ⟶ K.X 2 ⟶ K.X 1 ⟶ K.X 0, a cochain complex L: L.X 0 ⟶ L.X 1 ⟶ L.X 2 ⟶ ..., a morphism d₀ : K.X 0 ⟶ L.X 0 satisfying the identifies K.d 1 0 ≫ d₀ = 0 and d₀ ≫ L.d 0 1 = 0, we construct a cochain complex indexed by of the form ... ⟶ K.X 2 ⟶ K.X 1 ⟶ K.X 0 ⟶ L.X 0 ⟶ L.X 1 ⟶ L.X 2 ⟶ ..., where K.X 0 lies in degree -1 and L.X 0 in degree 0.

Main definitions #

Say K : ChainComplex C ℕ and L : CochainComplex C ℕ, so ... ⟶ K₂ ⟶ K₁ ⟶ K₀ and L⁰ ⟶ L¹ ⟶ L² ⟶ ....

Now say h : ConnectData K L.

TODO #

Given K : ChainComplex C ℕ and L : CochainComplex C ℕ, this data allows to connect K and L in order to get a cochain complex indexed by , see ConnectData.cochainComplex.

Instances For

    Auxiliary definition for ConnectData.cochainComplex.

    Equations
    Instances For

      Given h : ConnectData K L where K : ChainComplex C ℕ and L : CochainComplex C ℕ, this is the cochain complex indexed by obtained by connecting K and L: ... ⟶ K.X 2 ⟶ K.X 1 ⟶ K.X 0 ⟶ L.X 0 ⟶ L.X 1 ⟶ L.X 2 ⟶ ....

      Equations
      Instances For

        Given h : ConnectData K L and n : ℕ non-zero, the homology of h.cochainComplex in degree n identifies to the homology of L in degree n.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          Given h : ConnectData K L and n : ℕ non-zero, the homology of h.cochainComplex in degree -(n + 1) identifies to the homology of K in degree n.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For

            Connecting complexes is functorial.

            Equations
            Instances For
              @[simp]
              theorem CochainComplex.ConnectData.map_f {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {K K' : ChainComplex C } {L L' : CochainComplex C } (h : ConnectData K L) (h' : ConnectData K' L') (fK : K K') (fL : L L') (f_comm : CategoryTheory.CategoryStruct.comp (fK.f 0) h'.d₀ = CategoryTheory.CategoryStruct.comp h.d₀ (fL.f 0)) (x✝ : ) :
              (h.map h' fK fL f_comm).f x✝ = match x✝ with | Int.ofNat n => fL.f n | Int.negSucc n => fK.f n
              theorem CochainComplex.ConnectData.map_comp_map {C : Type u} [CategoryTheory.Category.{v, u} C] [CategoryTheory.Limits.HasZeroMorphisms C] {K K' K'' : ChainComplex C } {L L' L'' : CochainComplex C } (h : ConnectData K L) (h' : ConnectData K' L') (h'' : ConnectData K'' L'') (fK : K K') (fL : L L') (f_comm : CategoryTheory.CategoryStruct.comp (fK.f 0) h'.d₀ = CategoryTheory.CategoryStruct.comp h.d₀ (fL.f 0)) (fK' : K' K'') (fL' : L' L'') (f_comm' : CategoryTheory.CategoryStruct.comp (fK'.f 0) h''.d₀ = CategoryTheory.CategoryStruct.comp h'.d₀ (fL'.f 0)) :
              CategoryTheory.CategoryStruct.comp (h.map h' fK fL f_comm) (h'.map h'' fK' fL' f_comm') = h.map h'' (CategoryTheory.CategoryStruct.comp fK fK') (CategoryTheory.CategoryStruct.comp fL fL')