Skip to content

Commit 49ac6bf

Browse files
smorel394morel
andcommitted
feat(CategoryTheory/Shift): commutation with shifts and adjunctions (#20033)
Given categories `C` and `D` that have shifts by an additive group `A`, functors `F : C ⥤ D` and `G : C ⥤ D`, an adjunction `F ⊣ G` and a `CommShift` structure on `F`, construct a `CommShift` structure on `G`. As an easy application, if `E : C ≌ D` is an equivalence and `E.functor` has a `CommShift` structure, we get a `CommShift` structure on `E.inverse`. The `CommShift` structure on `G` must be compatible with the one on `F` in the following sense (cf. `Adjunction.CommShift`): for every `a` in `A`, the natural transformation `adj.unit : 𝟭 C ⟶ G ⋙ F` commutes with the isomorphism `shiftFunctor C A ⋙ G ⋙ F ≅ G ⋙ F ⋙ shiftFunctor C A` induces by `F.commShiftIso a` and `G.commShiftIso a`. We actually require a similar condition for `adj.counit`, but it follows from the one for `adj.unit`. In order to simplify the construction of the `CommShift` structure on `G`, we first introduce the compatibility condition on `adj.unit` for a fixed `a` in `A` and for isomorphisms `e₁ : shiftFunctor C a ⋙ F ≅ F ⋙ shiftFunctor D a` and `e₂ : shiftFunctor D a ⋙ G ≅ G ⋙ shiftFunctor C a`. We then prove that: - If `e₁` and `e₂` satusfy this condition, then `e₁` uniquely determines `e₂` and vice versa. - If `a = 0`, the isomorphisms `Functor.CommShift.isoZero F` and `Functor.CommShift.isoZero G` satisfy the condition. - The condition is stable by addition on `A`, if we use `Functor.CommShift.isoAdd` to deduce commutation isomorphism for `a + b` from such isomorphism from `a` and `b`. - Given commutation isomorphisms for `F`, our candidate commutation isomorphisms for `G`, constructed in `Adjunction.RightAdjointCommShift.iso`, satisfy the compatibility condition. Once we have established all this, the compatibility of the commutation isomorphism for `F` expressed in `CommShift.zero` and `CommShift.add` immediately implies the similar statements for the commutation isomorphisms for `G`. TODO: Construct a `CommShift` structure on `F` from a `CommShift` structure on `G`, using opposite categories. Co-authored-by: morel <smorel@math.princeton.edu>
1 parent 51104eb commit 49ac6bf

File tree

2 files changed

+437
-0
lines changed

2 files changed

+437
-0
lines changed

Mathlib.lean

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2060,6 +2060,7 @@ import Mathlib.CategoryTheory.Quotient
20602060
import Mathlib.CategoryTheory.Quotient.Linear
20612061
import Mathlib.CategoryTheory.Quotient.Preadditive
20622062
import Mathlib.CategoryTheory.Retract
2063+
import Mathlib.CategoryTheory.Shift.Adjunction
20632064
import Mathlib.CategoryTheory.Shift.Basic
20642065
import Mathlib.CategoryTheory.Shift.CommShift
20652066
import Mathlib.CategoryTheory.Shift.Induced

0 commit comments

Comments
 (0)