Documentation

Mathlib.CategoryTheory.Shift.Opposite

The (naive) shift on the opposite category #

If C is a category equipped with a shift by a monoid A, the opposite category can be equipped with a shift such that the shift functor by n is (shiftFunctor C n).op. This is the "naive" opposite shift, which we shall set on a category OppositeShift C A, which is a type synonym for Cᵒᵖ.

However, for the application to (pre)triangulated categories, we would like to define the shift on Cᵒᵖ so that shiftFunctor Cᵒᵖ n for n : ℤ identifies to (shiftFunctor C (-n)).op rather than (shiftFunctor C n).op. Then, the construction of the shift on Cᵒᵖ shall combine the shift on OppositeShift C A and another construction of the "pullback" of a shift by a monoid morphism like n ↦ -n.

If F : C ⥤ D is a functor between categories equipped with shifts by A, we define a type synonym OppositeShift.functor A F for F.op. When F has a CommShift structure by A, we define a CommShift structure by A on OppositeShift.functor A F. In this way, we can make this an instance and reserve F.op for the CommShift instance by the modified shift in the case of (pre)triangulated categories.

Similarly,if τ is a natural transformation between functors F,G : C ⥤ D, we define a type synonym for τ.op called OppositeShift.natTrans A τ : OppositeShift.functor A F ⟶ OppositeShift.functor A G. When τ has a CommShift structure by A (i.e. is compatible with CommShift structures on F and G), we define a CommShift structure by A on OppositeShift.natTrans A τ.

Finally, if we have an adjunction F ⊣ G (with G : D ⥤ C), we define a type synonym OppositeShift.adjunction A adj : OppositeShift.functor A G ⊣ OppositeShift.functor A F for adj.op, and we show that, if adj compatible with CommShift structures on F and G, then OppositeShift.adjunction A adj is also compatible with the pulled back CommShift structures.

Given a CommShift structure on a functor F, we define a CommShift structure on F.op (and vice versa). We also prove that, if an adjunction F ⊣ G is compatible with CommShift structures on F and G, then the opposite adjunction G.op ⊣ F.op is compatible with the opposite CommShift structures.

Construction of the naive shift on the opposite category of a category C: the shiftfunctor by n is (shiftFunctor C n).op.

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

    The category OppositeShift C A is the opposite category Cᵒᵖ equipped with the naive shift: shiftFunctor (OppositeShift C A) n is (shiftFunctor C n).op.

    Equations
    Instances For

      The functor F.op, seen as a functor from OppositeShift C A to OppositeShift D A. (We will use this to carry a CommShift instance for the naive shifts on the opposite category. Then, in the pretriangulated case, we will be able to put a CommShift instance on F.op for the modified shifts and not deal with instance clashes.

      Equations
      Instances For

        Given a CommShift structure on F, this is the corresponding CommShift structure on OppositeShift.functor F (for the naive shifts on the opposite categories).

        Equations

        Given a CommShift structure on OppositeShift.functor F (for the naive shifts on the opposite categories), this is the corresponding CommShift structure on F.

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

          The adjunction adj, seen as an adjunction between OppositeShift.functor G and OppositeShift.functor F.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            instance CategoryTheory.Adjunction.commShift_op {C : Type u_1} {D : Type u_2} [CategoryTheory.Category.{u_4, u_1} C] [CategoryTheory.Category.{u_5, u_2} D] (A : Type u_3) [AddMonoid A] [CategoryTheory.HasShift C A] [CategoryTheory.HasShift D A] {F : CategoryTheory.Functor C D} {G : CategoryTheory.Functor D C} (adj : F G) [F.CommShift A] [G.CommShift A] [adj.CommShift A] :

            If an adjunction F ⊣ G is compatible with CommShift structures on F and G, then the opposite adjunction OppositeShift.adjunction adj is compatible with the opposite CommShift structures.