Triangulated functors #
In this file, when C
and D
are categories equipped with a shift by ℤ
and
F : C ⥤ D
is a functor which commutes with the shift, we define the induced
functor F.mapTriangle : Triangle C ⥤ Triangle D
on the categories of
triangles. When C
and D
are pretriangulated, a triangulated functor
is such a functor F
which also sends distinguished triangles to
distinguished triangles: this defines the typeclass Functor.IsTriangulated
.
@[simp]
theorem
CategoryTheory.Functor.mapTriangle_map_hom₃
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
:
∀ {X Y : CategoryTheory.Pretriangulated.Triangle C} (f : X ⟶ Y),
((CategoryTheory.Functor.mapTriangle F).toPrefunctor.map f).hom₃ = F.toPrefunctor.map f.hom₃
@[simp]
theorem
CategoryTheory.Functor.mapTriangle_map_hom₁
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
:
∀ {X Y : CategoryTheory.Pretriangulated.Triangle C} (f : X ⟶ Y),
((CategoryTheory.Functor.mapTriangle F).toPrefunctor.map f).hom₁ = F.toPrefunctor.map f.hom₁
@[simp]
theorem
CategoryTheory.Functor.mapTriangle_map_hom₂
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
:
∀ {X Y : CategoryTheory.Pretriangulated.Triangle C} (f : X ⟶ Y),
((CategoryTheory.Functor.mapTriangle F).toPrefunctor.map f).hom₂ = F.toPrefunctor.map f.hom₂
@[simp]
theorem
CategoryTheory.Functor.mapTriangle_obj
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
(T : CategoryTheory.Pretriangulated.Triangle C)
:
(CategoryTheory.Functor.mapTriangle F).toPrefunctor.obj T = CategoryTheory.Pretriangulated.Triangle.mk (F.toPrefunctor.map T.mor₁) (F.toPrefunctor.map T.mor₂)
(CategoryTheory.CategoryStruct.comp (F.toPrefunctor.map T.mor₃)
((CategoryTheory.Functor.commShiftIso F 1).hom.app T.obj₁))
def
CategoryTheory.Functor.mapTriangle
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
:
The functor Triangle C ⥤ Triangle D
that is induced by a functor F : C ⥤ D
which commutes with shift by ℤ
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
instance
CategoryTheory.Functor.instFaithfulTriangleTriangleCategoryTriangleTriangleCategoryMapTriangle
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Faithful F]
:
Equations
instance
CategoryTheory.Functor.instFullTriangleTriangleCategoryTriangleTriangleCategoryMapTriangle
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Full F]
[CategoryTheory.Faithful F]
:
Equations
- One or more equations did not get rendered due to their size.
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₂
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).inv.app X).hom₂ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₂
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₂
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).hom.app X).hom₂ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₂
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₃
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).inv.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₃
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₁
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).hom.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₁
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_inv_app_hom₁
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).inv.app X).hom₁ = (CategoryTheory.Functor.commShiftIso F n).inv.app X.obj₁
@[simp]
theorem
CategoryTheory.Functor.mapTriangleCommShiftIso_hom_app_hom₃
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
(X : CategoryTheory.Pretriangulated.Triangle C)
:
((CategoryTheory.Functor.mapTriangleCommShiftIso F n).hom.app X).hom₃ = (CategoryTheory.Functor.commShiftIso F n).hom.app X.obj₃
noncomputable def
CategoryTheory.Functor.mapTriangleCommShiftIso
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
(n : ℤ)
:
The functor F.mapTriangle
commutes with the shift.
Equations
- One or more equations did not get rendered due to their size.
Instances For
noncomputable instance
CategoryTheory.Functor.instCommShiftTriangleTriangleTriangleCategoryTriangleCategoryMapTriangleIntInstAddMonoidIntInstHasShiftTriangleIntTriangleCategoryInstAddMonoidIntInstHasShiftTriangleIntTriangleCategoryInstAddMonoidInt
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[CategoryTheory.Functor.Additive F]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor C n)]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor D n)]
:
Equations
- One or more equations did not get rendered due to their size.
class
CategoryTheory.Functor.IsTriangulated
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Limits.HasZeroObject C]
[CategoryTheory.Limits.HasZeroObject D]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor C n)]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor D n)]
[CategoryTheory.Pretriangulated C]
[CategoryTheory.Pretriangulated D]
:
A functor which commutes with the shift by ℤ
is triangulated if
it sends distinguished triangles to distinguished triangles.
- map_distinguished : ∀ T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles, (CategoryTheory.Functor.mapTriangle F).toPrefunctor.obj T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles
Instances
theorem
CategoryTheory.Functor.map_distinguished
{C : Type u_1}
{D : Type u_2}
[CategoryTheory.Category.{u_3, u_1} C]
[CategoryTheory.Category.{u_4, u_2} D]
[CategoryTheory.HasShift C ℤ]
[CategoryTheory.HasShift D ℤ]
(F : CategoryTheory.Functor C D)
[CategoryTheory.Functor.CommShift F ℤ]
[CategoryTheory.Limits.HasZeroObject C]
[CategoryTheory.Limits.HasZeroObject D]
[CategoryTheory.Preadditive C]
[CategoryTheory.Preadditive D]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor C n)]
[∀ (n : ℤ), CategoryTheory.Functor.Additive (CategoryTheory.shiftFunctor D n)]
[CategoryTheory.Pretriangulated C]
[CategoryTheory.Pretriangulated D]
[CategoryTheory.Functor.IsTriangulated F]
(T : CategoryTheory.Pretriangulated.Triangle C)
(hT : T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles)
:
(CategoryTheory.Functor.mapTriangle F).toPrefunctor.obj T ∈ CategoryTheory.Pretriangulated.distinguishedTriangles