Functors from a category to a category with a shift #
Given a category C, and a category D equipped with a shift by a monoid A,
we define a structure SingleFunctors C D A which contains the data of
functors functor a : C ⥤ D for all a : A and isomorphisms
shiftIso n a a' h : functor a' ⋙ shiftFunctor D n ≅ functor a
whenever n + a = a'. These isomorphisms should satisfy certain compatibilities
with respect to the shift on D.
This notion is similar to Functor.ShiftSequence which can be used in order to
attach shifted versions of a homological functor D ⥤ C with D a
triangulated category and C an abelian category. However, the definition
SingleFunctors is for functors in the other direction: it is meant to
ease the formalization of the compatibilities with shifts of the
functors C ⥤ CochainComplex C ℤ (or C ⥤ DerivedCategory C (TODO))
which sends an object X : C to a complex where X sits in a single degree.
The type of families of functors A → C ⥤ D which are compatible with
the shift by A on the category D.
- functor (a : A) : Functor C D
a family of functors
C ⥤ Dindexed by the elements of the additive monoidA - shiftIso_zero (a : A) : self.shiftIso 0 a a ⋯ = isoWhiskerLeft (self.functor a) (shiftFunctorZero D A)
shiftIso 0is the obvious isomorphism. - shiftIso_add (n m a a' a'' : A) (ha' : n + a = a') (ha'' : m + a' = a'') : self.shiftIso (m + n) a a'' ⋯ = isoWhiskerLeft (self.functor a'') (shiftFunctorAdd D m n) ≪≫ ((self.functor a'').associator (shiftFunctor D m) (shiftFunctor D n)).symm ≪≫ isoWhiskerRight (self.shiftIso m a' a'' ha'') (shiftFunctor D n) ≪≫ self.shiftIso n a a' ha'
Instances For
The morphisms in the category SingleFunctors C D A
- comm (n a a' : A) (ha' : n + a = a') : CategoryStruct.comp (F.shiftIso n a a' ha').hom (self.hom a) = CategoryStruct.comp (whiskerRight (self.hom a') (shiftFunctor D n)) (G.shiftIso n a a' ha').hom
Instances For
The identity morphism in SingleFunctors C D A.
Equations
- CategoryTheory.SingleFunctors.Hom.id F = { hom := fun (x : A) => CategoryTheory.CategoryStruct.id (F.functor x), comm := ⋯ }
Instances For
The composition of morphisms in SingleFunctors C D A.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Construct an isomorphism in SingleFunctors C D A by giving
level-wise isomorphisms and checking compatibility only in the forward direction.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The evaluation SingleFunctors C D A ⥤ C ⥤ D for some a : A.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Given F : SingleFunctors C D A, and a functor G : D ⥤ E which commutes
with the shift by A, this is the "composition" of F and G in SingleFunctors C E A.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The functor SingleFunctors C D A ⥤ SingleFunctors C E A given by the postcomposition
by a functor G : D ⥤ E which commutes with the shift.
Equations
- One or more equations did not get rendered due to their size.
Instances For
The canonical isomorphism (F.postcomp G).postcomp G' ≅ F.postcomp (G ⋙ G').
Equations
- F.postcompPostcompIso G G' = CategoryTheory.SingleFunctors.isoMk (fun (x : A) => (F.functor x).associator G G') ⋯
Instances For
The isomorphism F.postcomp G ≅ F.postcomp G' induced by an isomorphism e : G ≅ G'
which commutes with the shift.
Equations
- F.postcompIsoOfIso e = CategoryTheory.SingleFunctors.isoMk (fun (a : A) => CategoryTheory.isoWhiskerLeft (F.functor a) e) ⋯