Documentation

Mathlib.Algebra.Homology.HomotopyCategory.Pretriangulated

The pretriangulated structure on the homotopy category of complexes

In this file, we define the pretriangulated structure on the homotopy category HomotopyCategory C (ComplexShape.up ℤ) of an additive category C. The distinguished triangles are the triangles that are isomorphic to the image in the homotopy category of the standard triangle K ⟶ L ⟶ mappingCone φ ⟶ K⟦(1 : ℤ)⟧ for some morphism of cochain complexes φ : K ⟶ L.

This result first appeared in the Liquid Tensor Experiment. In the LTE, the formalization followed the Stacks Project: in particular, the distinguished triangles were defined using degreewise-split short exact sequences of cochain complexes. Here, we follow the original definitions in [Verdier's thesis, I.3][verdier1996] (with the better sign conventions from the introduction of [Brian Conrad's book Grothendieck duality and base change][conrad2000]).

References #

The standard triangle K ⟶ L ⟶ mappingCone φ ⟶ K⟦(1 : ℤ)⟧ in CochainComplex C ℤ attached to a morphism φ : K ⟶ L. It involves φ, inr φ : L ⟶ mappingCone φ and the morphism induced by the 1-cocycle -mappingCone.fst φ.

Instances For
    @[reducible, inline]

    The (distinguished) triangle in the homotopy category that is associated to a morphism φ : K ⟶ L in the category CochainComplex C ℤ.

    Instances For
      noncomputable def CochainComplex.mappingCone.mapOfHomotopy {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } {φ₁ : K₁ L₁} {φ₂ : K₂ L₂} {a : K₁ K₂} {b : L₁ L₂} (H : Homotopy (CategoryTheory.CategoryStruct.comp φ₁ b) (CategoryTheory.CategoryStruct.comp a φ₂)) :

      The morphism mappingCone φ₁ ⟶ mappingCone φ₂ that is induced by a square that is commutative up to homotopy.

      Instances For
        noncomputable def CochainComplex.mappingCone.trianglehMapOfHomotopy {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } {φ₁ : K₁ L₁} {φ₂ : K₂ L₂} {a : K₁ K₂} {b : L₁ L₂} (H : Homotopy (CategoryTheory.CategoryStruct.comp φ₁ b) (CategoryTheory.CategoryStruct.comp a φ₂)) :
        triangleh φ₁ triangleh φ₂

        The morphism triangleh φ₁ ⟶ triangleh φ₂ that is induced by a square that is commutative up to homotopy.

        Instances For
          noncomputable def CochainComplex.mappingCone.map {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :

          The morphism mappingCone φ₁ ⟶ mappingCone φ₂ that is induced by a commutative square.

          Instances For
            theorem CochainComplex.mappingCone.map_eq_mapOfHomotopy {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :
            map φ₁ φ₂ a b comm = mapOfHomotopy (Homotopy.ofEq comm)
            theorem CochainComplex.mappingCone.map_comp {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ K₃ L₃ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (φ₃ : K₃ L₃) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) (a' : K₂ K₃) (b' : L₂ L₃) (comm' : CategoryTheory.CategoryStruct.comp φ₂ b' = CategoryTheory.CategoryStruct.comp a' φ₃) :
            map φ₁ φ₃ (CategoryTheory.CategoryStruct.comp a a') (CategoryTheory.CategoryStruct.comp b b') = CategoryTheory.CategoryStruct.comp (map φ₁ φ₂ a b comm) (map φ₂ φ₃ a' b' comm')
            theorem CochainComplex.mappingCone.map_comp_assoc {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ K₃ L₃ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (φ₃ : K₃ L₃) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) (a' : K₂ K₃) (b' : L₂ L₃) (comm' : CategoryTheory.CategoryStruct.comp φ₂ b' = CategoryTheory.CategoryStruct.comp a' φ₃) {Z : CochainComplex C } (h : mappingCone φ₃ Z) :
            noncomputable def CochainComplex.mappingCone.triangleMap {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :
            triangle φ₁ triangle φ₂

            The morphism triangle φ₁ ⟶ triangle φ₂ that is induced by a commutative square.

            Instances For
              @[simp]
              theorem CochainComplex.mappingCone.triangleMap_hom₃ {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :
              (triangleMap φ₁ φ₂ a b comm).hom₃ = map φ₁ φ₂ a b comm
              @[simp]
              theorem CochainComplex.mappingCone.triangleMap_hom₁ {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :
              (triangleMap φ₁ φ₂ a b comm).hom₁ = a
              @[simp]
              theorem CochainComplex.mappingCone.triangleMap_hom₂ {C : Type u_1} [CategoryTheory.Category.{v_1, u_1} C] [CategoryTheory.Preadditive C] [CategoryTheory.Limits.HasBinaryBiproducts C] {K₁ L₁ K₂ L₂ : CochainComplex C } (φ₁ : K₁ L₁) (φ₂ : K₂ L₂) (a : K₁ K₂) (b : L₁ L₂) (comm : CategoryTheory.CategoryStruct.comp φ₁ b = CategoryTheory.CategoryStruct.comp a φ₂) :
              (triangleMap φ₁ φ₂ a b comm).hom₂ = b

              Given φ : K ⟶ L, K⟦(1 : ℤ)⟧ is homotopy equivalent to the mapping cone of inr φ : L ⟶ mappingCone φ.

              Instances For

                The canonical isomorphism of triangles (triangleh φ).rotate ≅ (triangleh (inr φ)).

                Instances For

                  The canonical isomorphism (mappingCone φ)⟦n⟧ ≅ mappingCone (φ⟦n⟧').

                  Instances For

                    If φ : K ⟶ L is a morphism of cochain complexes in C and G : C ⥤ D is an additive functor, then the image by G of the triangle triangle φ identifies to the triangle associated to the image of φ by G.

                    Instances For

                      If φ : K ⟶ L is a morphism of cochain complexes in C and G : C ⥤ D is an additive functor, then the image by G of the triangle triangleh φ identifies to the triangle associated to the image of φ by G.

                      Instances For