The opposite of an abelian category is abelian. #
def
CategoryTheory.kernelOpUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The kernel of f.op
is the opposite of cokernel f
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
CategoryTheory.kernelOpUnop_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
@[simp]
theorem
CategoryTheory.kernelOpUnop_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
def
CategoryTheory.cokernelOpUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The cokernel of f.op
is the opposite of kernel f
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
@[simp]
theorem
CategoryTheory.cokernelOpUnop_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
@[simp]
theorem
CategoryTheory.cokernelOpUnop_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
def
CategoryTheory.kernelUnopOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The kernel of g.unop
is the opposite of cokernel g
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.kernelUnopOp_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
@[simp]
theorem
CategoryTheory.kernelUnopOp_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
def
CategoryTheory.cokernelUnopOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The cokernel of g.unop
is the opposite of kernel g
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.cokernelUnopOp_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
@[simp]
theorem
CategoryTheory.cokernelUnopOp_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
theorem
CategoryTheory.cokernel.π_op
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
(Limits.cokernel.π f.op).unop = CategoryStruct.comp (cokernelOpUnop f).hom (CategoryStruct.comp (Limits.kernel.ι f) (eqToHom ⋯))
theorem
CategoryTheory.kernel.ι_op
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
(Limits.kernel.ι f.op).unop = CategoryStruct.comp (eqToHom ⋯) (CategoryStruct.comp (Limits.cokernel.π f) (kernelOpUnop f).inv)
def
CategoryTheory.kernelOpOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The kernel of f.op
is the opposite of cokernel f
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.kernelOpOp_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
@[simp]
theorem
CategoryTheory.kernelOpOp_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
def
CategoryTheory.cokernelOpOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The cokernel of f.op
is the opposite of kernel f
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.cokernelOpOp_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
@[simp]
theorem
CategoryTheory.cokernelOpOp_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
def
CategoryTheory.kernelUnopUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The kernel of g.unop
is the opposite of cokernel g
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.kernelUnopUnop_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
@[simp]
theorem
CategoryTheory.kernelUnopUnop_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
theorem
CategoryTheory.kernel.ι_unop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
(Limits.kernel.ι g.unop).op = CategoryStruct.comp (eqToHom ⋯) (CategoryStruct.comp (Limits.cokernel.π g) (kernelUnopOp g).inv)
theorem
CategoryTheory.cokernel.π_unop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
(Limits.cokernel.π g.unop).op = CategoryStruct.comp (cokernelUnopOp g).hom (CategoryStruct.comp (Limits.kernel.ι g) (eqToHom ⋯))
def
CategoryTheory.cokernelUnopUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The cokernel of g.unop
is the opposite of kernel g
.
Equations
Instances For
@[simp]
theorem
CategoryTheory.cokernelUnopUnop_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
@[simp]
theorem
CategoryTheory.cokernelUnopUnop_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
def
CategoryTheory.imageUnopOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The opposite of the image of g.unop
is the image of g.
Equations
- One or more equations did not get rendered due to their size.
Instances For
def
CategoryTheory.imageOpOp
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The opposite of the image of f
is the image of f.op
.
Equations
Instances For
def
CategoryTheory.imageOpUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{X Y : C}
(f : X ⟶ Y)
:
The image of f.op
is the opposite of the image of f
.
Equations
Instances For
def
CategoryTheory.imageUnopUnop
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
The image of g
is the opposite of the image of g.unop.
Equations
Instances For
theorem
CategoryTheory.image_ι_op_comp_imageUnopOp_hom
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
theorem
CategoryTheory.imageUnopOp_hom_comp_image_ι
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
theorem
CategoryTheory.factorThruImage_comp_imageUnopOp_inv
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
:
theorem
CategoryTheory.imageUnopOp_inv_comp_op_factorThruImage
{C : Type u_1}
[Category.{u_2, u_1} C]
[Abelian C]
{A B : Cᵒᵖ}
(g : A ⟶ B)
: