Documentation

Mathlib.Algebra.Homology.ShortComplex.HomologicalComplex

The short complexes attached to homological complexes #

In this file, we define a functor shortComplexFunctor C c i : HomologicalComplex C c ⥤ ShortComplex C. By definition, the image of a homological complex K by this functor is the short complex K.X (c.prev i) ⟶ K.X i ⟶ K.X (c.next i).

The homology K.homology i of a homological complex K in degree i is defined as the homology of the short complex (shortComplexFunctor C c i).obj K, which can be abbreviated as K.sc i.

@[simp]
theorem HomologicalComplex.shortComplexFunctor'_obj_X₂ (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) :
((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.obj K).X₂ = K.X j
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_map_τ₁ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) :
∀ {X Y : HomologicalComplex C c} (f : X Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.map f).τ₁ = f.f i
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_obj_g (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) :
((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.obj K).g = K.d j k
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_map_τ₃ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) :
∀ {X Y : HomologicalComplex C c} (f : X Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.map f).τ₃ = f.f k
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_obj_f (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) :
((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.obj K).f = K.d i j
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_obj_X₁ (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) :
((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.obj K).X₁ = K.X i
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_obj_X₃ (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) :
((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.obj K).X₃ = K.X k
@[simp]
theorem HomologicalComplex.shortComplexFunctor'_map_τ₂ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) :
∀ {X Y : HomologicalComplex C c} (f : X Y), ((HomologicalComplex.shortComplexFunctor' C c i j k).toPrefunctor.map f).τ₂ = f.f j

The functor HomologicalComplex C c ⥤ ShortComplex C which sends a homological complex K to the short complex K.X i ⟶ K.X j ⟶ K.X k for arbitrary indices i, j and k.

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

    The functor HomologicalComplex C c ⥤ ShortComplex C which sends a homological complex K to the short complex K.X (c.prev i) ⟶ K.X i ⟶ K.X (c.next i).

    Equations
    Instances For
      @[simp]
      theorem HomologicalComplex.natIsoSc'_hom_app_τ₁ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₁ = (HomologicalComplex.XIsoOfEq X hi).hom
      @[simp]
      theorem HomologicalComplex.natIsoSc'_inv_app_τ₃ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₃ = (HomologicalComplex.XIsoOfEq X hk).inv
      @[simp]
      theorem HomologicalComplex.natIsoSc'_inv_app_τ₂ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₂ = CategoryTheory.CategoryStruct.id (X.X j)
      @[simp]
      theorem HomologicalComplex.natIsoSc'_inv_app_τ₁ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).inv.app X).τ₁ = (HomologicalComplex.XIsoOfEq X hi).inv
      @[simp]
      theorem HomologicalComplex.natIsoSc'_hom_app_τ₂ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₂ = CategoryTheory.CategoryStruct.id (X.X j)
      @[simp]
      theorem HomologicalComplex.natIsoSc'_hom_app_τ₃ (C : Type u_1) [CategoryTheory.Category.{u_3, u_1} C] [CategoryTheory.Limits.HasZeroMorphisms C] {ι : Type u_2} (c : ComplexShape ι) (i : ι) (j : ι) (k : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) (X : HomologicalComplex C c) :
      ((HomologicalComplex.natIsoSc' C c i j k hi hk).hom.app X).τ₃ = (HomologicalComplex.XIsoOfEq X hk).hom

      The natural isomorphism shortComplexFunctor C c j ≅ shortComplexFunctor' C c i j k when c.prev j = i and c.next j = k.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[inline, reducible]

        The short complex K.X i ⟶ K.X j ⟶ K.X k for arbitrary indices i, j and k.

        Equations
        Instances For
          @[inline, reducible]

          The short complex K.X (c.prev i) ⟶ K.X i ⟶ K.X (c.next i).

          Equations
          Instances For
            @[inline, reducible]
            noncomputable abbrev HomologicalComplex.isoSc' {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 : ι) (hi : ComplexShape.prev c j = i) (hk : ComplexShape.next c j = k) :

            The canonical isomorphism K.sc j ≅ K.sc' i j k when c.prev j = i and c.next j = k.

            Equations
            Instances For
              @[inline, reducible]

              A homological complex K has homology in degree i if the associated short complex K.sc i has.

              Equations
              Instances For

                The homology in degree i of a homological complex.

                Equations
                Instances For

                  The cycles in degree i of a homological complex.

                  Equations
                  Instances For

                    The inclusion of the cycles of a homological complex.

                    Equations
                    Instances For

                      The morphism to K.cycles i that is induced by a "cycle", i.e. a morphism to K.X i whose postcomposition with the differential is zero.

                      Equations
                      Instances For
                        @[reducible]
                        noncomputable def HomologicalComplex.liftCycles' {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 : ι} [HomologicalComplex.HasHomology K i] {A : C} (k : A K.X i) (j : ι) (hj : c.Rel i j) (hk : CategoryTheory.CategoryStruct.comp k (K.d i j) = 0) :

                        The morphism to K.cycles i that is induced by a "cycle", i.e. a morphism to K.X i whose postcomposition with the differential is zero.

                        Equations
                        Instances For

                          The map K.X i ⟶ K.cycles j induced by the differential K.d i j.

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

                            K.homology j is the cokernel of K.toCycles i j : K.X i ⟶ K.cycles j when c.prev j = i.

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

                              The opcycles in degree i of a homological complex.

                              Equations
                              Instances For

                                The morphism from K.opcycles i that is induced by an "opcycle", i.e. a morphism from K.X i whose precomposition with the differential is zero.

                                Equations
                                Instances For
                                  @[reducible]
                                  noncomputable def HomologicalComplex.descOpcycles' {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 : ι} [HomologicalComplex.HasHomology K i] {A : C} (k : K.X i A) (j : ι) (hj : c.Rel j i) (hk : CategoryTheory.CategoryStruct.comp (K.d j i) k = 0) :

                                  The morphism from K.opcycles i that is induced by an "opcycle", i.e. a morphism from K.X i whose precomposition with the differential is zero.

                                  Equations
                                  Instances For

                                    The map K.opcycles i ⟶ K.X j induced by the differential K.d i j.

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

                                      K.opcycles j is the cokernel of K.d i j when c.prev j = i.

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

                                        The ith homology functor HomologicalComplex C c ⥤ C.

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

                                          The homology functor to graded objects.

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

                                            The ith cycles functor HomologicalComplex C c ⥤ C.

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

                                              The ith opcycles functor HomologicalComplex C c ⥤ C.

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

                                                The natural isomorphism K.homology j ≅ (K.sc' i j k).homology for all homological complexes K when c.prev j = i and c.next j = k.

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

                                                  The canonical isomorphism K.cycles i ≅ K.X i when the differential from i is zero.

                                                  Equations
                                                  Instances For

                                                    The canonical isomorphism K.homology i ≅ K.opcycles i when the differential from i is zero.

                                                    Equations
                                                    Instances For

                                                      The canonical isomorphism K.X j ≅ K.opCycles j when the differential to j is zero.

                                                      Equations
                                                      Instances For

                                                        The canonical isomorphism K.cycles j ≅ K.homology j when the differential to j is zero.

                                                        Equations
                                                        Instances For

                                                          A homological complex K is exact at i if the short complex K.sc i is exact.

                                                          Equations
                                                          Instances For
                                                            @[inline, reducible]

                                                            The canonical isomorphism K.homology 0 ≅ K.opcycles 0 for a chain complex K indexed by .

                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            Instances For
                                                              @[inline, reducible]

                                                              The canonical isomorphism K.cycles 0 ≅ K.homology 0 for a cochain complex K indexed by .

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

                                                                The cycles of a homological complex in degree j can be computed by specifying a choice of c.prev j and c.next j.

                                                                Equations
                                                                Instances For

                                                                  The homology of a homological complex in degree j can be computed by specifying a choice of c.prev j and c.next j.

                                                                  Equations
                                                                  Instances For

                                                                    The opcycles of a homological complex in degree j can be computed by specifying a choice of c.prev j and c.next j.

                                                                    Equations
                                                                    Instances For