If D is abelian, then the functor category C ⥤ D is also abelian. #
def
CategoryTheory.Abelian.FunctorCategory.coimageObjIso
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
The abelian coimage in a functor category can be calculated componentwise.
Equations
- One or more equations did not get rendered due to their size.
 
Instances For
@[simp]
theorem
CategoryTheory.Abelian.FunctorCategory.coimageObjIso_inv
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
(coimageObjIso α X).inv =   CategoryStruct.comp
    (Limits.cokernel.map (Limits.kernel.ι (α.app X)) ((Limits.kernel.ι α).app X)
      (Limits.PreservesKernel.iso ((evaluation C D).obj X) α).inv (CategoryStruct.id (F.obj X)) ⋯)
    (Limits.cokernelComparison (Limits.kernel.ι α) ((evaluation C D).obj X))
@[simp]
theorem
CategoryTheory.Abelian.FunctorCategory.coimageObjIso_hom
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
(coimageObjIso α X).hom =   CategoryStruct.comp (Limits.PreservesCokernel.iso ((evaluation C D).obj X) (Limits.kernel.ι α)).hom
    (Limits.cokernel.map ((Limits.kernel.ι α).app X) (Limits.kernel.ι (α.app X))
      (Limits.kernelComparison α ((evaluation C D).obj X)) (CategoryStruct.id (F.obj X)) ⋯)
def
CategoryTheory.Abelian.FunctorCategory.imageObjIso
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
The abelian image in a functor category can be calculated componentwise.
Equations
- One or more equations did not get rendered due to their size.
 
Instances For
@[simp]
theorem
CategoryTheory.Abelian.FunctorCategory.imageObjIso_inv
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
(imageObjIso α X).inv =   CategoryStruct.comp
    (Limits.kernel.map (Limits.cokernel.π (α.app X)) ((Limits.cokernel.π α).app X) (CategoryStruct.id (G.obj X))
      (Limits.cokernelComparison α ((evaluation C D).obj X)) ⋯)
    (Limits.PreservesKernel.iso ((evaluation C D).obj X) (Limits.cokernel.π α)).inv
@[simp]
theorem
CategoryTheory.Abelian.FunctorCategory.imageObjIso_hom
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
(imageObjIso α X).hom =   CategoryStruct.comp (Limits.kernelComparison (Limits.cokernel.π α) ((evaluation C D).obj X))
    (Limits.kernel.map ((Limits.cokernel.π α).app X) (Limits.cokernel.π (α.app X)) (CategoryStruct.id (G.obj X))
      (Limits.PreservesCokernel.iso ((evaluation C D).obj X) α).hom ⋯)
theorem
CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
coimageImageComparison (α.app X) =   CategoryStruct.comp (coimageObjIso α X).inv
    (CategoryStruct.comp ((coimageImageComparison α).app X) (imageObjIso α X).hom)
theorem
CategoryTheory.Abelian.FunctorCategory.coimageImageComparison_app'
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
(X : C)
 :
(coimageImageComparison α).app X =   CategoryStruct.comp (coimageObjIso α X).hom
    (CategoryStruct.comp (coimageImageComparison (α.app X)) (imageObjIso α X).inv)
instance
CategoryTheory.Abelian.FunctorCategory.functor_category_isIso_coimageImageComparison
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
{F G : Functor C D}
(α : F ⟶ G)
 :
noncomputable instance
CategoryTheory.Abelian.functorCategoryAbelian
{C : Type u}
[Category.{v, u} C]
{D : Type w}
[Category.{z, w} D]
[Abelian D]
 :