Documentation

Mathlib.CategoryTheory.Triangulated.TStructure.Basic

t-structures on triangulated categories #

This files introduces the notion of t-structure on (pre)triangulated categories.

The first example of t-structure shall be the canonical t-structure on the derived category of an abelian category (TODO).

Given a t-structure t : TStructure C, we define type classes t.IsLE X n and t.IsGE X n in order to say that an object X : C is ≤ n or ≥ n for t.

Implementation notes #

We introduce the type of t-structures rather than a type class saying that we have fixed a t-structure on a certain category. The reason is that certain triangulated categories have several t-structures which one may want to use depending on the context.

TODO #

References #

TStructure C is the type of t-structures on the (pre)triangulated category C.

Instances For
    theorem CategoryTheory.Triangulated.TStructure.exists_triangle {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (t : TStructure C) (A : C) (n₀ n₁ : ) (h : n₀ + 1 = n₁) :
    ∃ (X : C) (Y : C) (_ : t.le n₀ X) (_ : t.ge n₁ Y) (f : X A) (g : A Y) (h : Y (shiftFunctor C 1).obj X), Pretriangulated.Triangle.mk f g h Pretriangulated.distinguishedTriangles
    theorem CategoryTheory.Triangulated.TStructure.shift_le {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (t : TStructure C) (a n n' : ) (hn' : a + n = n') :
    (t.le n).shift a = t.le n'
    theorem CategoryTheory.Triangulated.TStructure.shift_ge {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (t : TStructure C) (a n n' : ) (hn' : a + n = n') :
    (t.ge n).shift a = t.ge n'

    Given a t-structure t on a pretriangulated category C, the property t.IsLE X n holds if X : C is ≤ n for the t-structure.

    • le : t.le n X
    Instances

      Given a t-structure t on a pretriangulated category C, the property t.IsGE X n holds if X : C is ≥ n for the t-structure.

      • ge : t.ge n X
      Instances
        @[deprecated CategoryTheory.Triangulated.TStructure.le (since := "2025-02-25")]

        Alias of CategoryTheory.Triangulated.TStructure.le.


        the predicate of objects that are ≤ n for n : ℤ.

        Equations
        Instances For
          @[deprecated CategoryTheory.Triangulated.TStructure.ge (since := "2025-02-25")]

          Alias of CategoryTheory.Triangulated.TStructure.ge.


          the predicate of objects that are ≥ n for n : ℤ.

          Equations
          Instances For
            @[deprecated CategoryTheory.Triangulated.TStructure.le_shift (since := "2025-02-25")]
            theorem CategoryTheory.Triangulated.TStructure.LE_shift {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (self : TStructure C) (n a n' : ) (h : a + n' = n) (X : C) (hX : self.le n X) :
            self.le n' ((shiftFunctor C a).obj X)

            Alias of CategoryTheory.Triangulated.TStructure.le_shift.

            @[deprecated CategoryTheory.Triangulated.TStructure.ge_shift (since := "2025-02-25")]
            theorem CategoryTheory.Triangulated.TStructure.GE_shift {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (self : TStructure C) (n a n' : ) (h : a + n' = n) (X : C) (hX : self.ge n X) :
            self.ge n' ((shiftFunctor C a).obj X)

            Alias of CategoryTheory.Triangulated.TStructure.ge_shift.

            @[deprecated CategoryTheory.Triangulated.TStructure.le_zero_le (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.le_zero_le.

            @[deprecated CategoryTheory.Triangulated.TStructure.ge_one_le (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.ge_one_le.

            @[deprecated CategoryTheory.Triangulated.TStructure.shift_le (since := "2025-02-25")]
            theorem CategoryTheory.Triangulated.TStructure.predicateShift_LE {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (t : TStructure C) (a n n' : ) (hn' : a + n = n') :
            (t.le n).shift a = t.le n'

            Alias of CategoryTheory.Triangulated.TStructure.shift_le.

            @[deprecated CategoryTheory.Triangulated.TStructure.shift_ge (since := "2025-02-25")]
            theorem CategoryTheory.Triangulated.TStructure.predicateShift_GE {C : Type u_1} [Category.{u_2, u_1} C] [Preadditive C] [Limits.HasZeroObject C] [HasShift C ] [∀ (n : ), (shiftFunctor C n).Additive] [Pretriangulated C] (t : TStructure C) (a n n' : ) (hn' : a + n = n') :
            (t.ge n).shift a = t.ge n'

            Alias of CategoryTheory.Triangulated.TStructure.shift_ge.

            @[deprecated CategoryTheory.Triangulated.TStructure.le_monotone (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.le_monotone.

            @[deprecated CategoryTheory.Triangulated.TStructure.ge_antitone (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.ge_antitone.

            @[deprecated CategoryTheory.Triangulated.TStructure.le_of_isLE (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.le_of_isLE.

            @[deprecated CategoryTheory.Triangulated.TStructure.ge_of_isGE (since := "2025-02-25")]

            Alias of CategoryTheory.Triangulated.TStructure.ge_of_isGE.