Monoidal opposites #
We write Cᵐᵒᵖ
for the monoidal opposite of a monoidal category C
.
A type synonym for the monoidal opposite. Use the notation Cᴹᵒᵖ
.
Equations
- CategoryTheory.MonoidalOpposite.«term_ᴹᵒᵖ» = Lean.ParserDescr.trailingNode `CategoryTheory.MonoidalOpposite.term_ᴹᵒᵖ 1024 0 (Lean.ParserDescr.symbol "ᴹᵒᵖ")
Instances For
Think of an object of C
as an object of Cᴹᵒᵖ
.
Equations
Instances For
Think of an object of Cᴹᵒᵖ
as an object of C
.
Equations
Instances For
theorem
CategoryTheory.MonoidalOpposite.op_injective
{C : Type u₁}
:
Function.Injective CategoryTheory.MonoidalOpposite.mop
theorem
CategoryTheory.MonoidalOpposite.unop_injective
{C : Type u₁}
:
Function.Injective CategoryTheory.MonoidalOpposite.unmop
@[simp]
@[simp]
@[simp]
@[simp]
instance
CategoryTheory.MonoidalOpposite.monoidalOppositeCategory
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
:
Equations
- CategoryTheory.MonoidalOpposite.monoidalOppositeCategory = CategoryTheory.InducedCategory.category CategoryTheory.MonoidalOpposite.unmop
The monoidal opposite of a morphism f : X ⟶ Y
is just f
, thought of as mop X ⟶ mop Y
.
Equations
- Quiver.Hom.mop f = f
Instances For
def
Quiver.Hom.unmop
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : Cᴹᵒᵖ}
{Y : Cᴹᵒᵖ}
(f : X ⟶ Y)
:
We can think of a morphism f : mop X ⟶ mop Y
as a morphism X ⟶ Y
.
Equations
- Quiver.Hom.unmop f = f
Instances For
theorem
CategoryTheory.mop_inj
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
:
Function.Injective Quiver.Hom.mop
theorem
CategoryTheory.unmop_inj
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : Cᴹᵒᵖ}
{Y : Cᴹᵒᵖ}
:
Function.Injective Quiver.Hom.unmop
@[simp]
theorem
CategoryTheory.unmop_mop
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
{f : X ⟶ Y}
:
Quiver.Hom.unmop (Quiver.Hom.mop f) = f
@[simp]
theorem
CategoryTheory.mop_unmop
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : Cᴹᵒᵖ}
{Y : Cᴹᵒᵖ}
{f : X ⟶ Y}
:
Quiver.Hom.mop (Quiver.Hom.unmop f) = f
@[simp]
theorem
CategoryTheory.mop_comp
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
{Z : C}
{f : X ⟶ Y}
{g : Y ⟶ Z}
:
@[simp]
@[simp]
theorem
CategoryTheory.unmop_comp
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : Cᴹᵒᵖ}
{Y : Cᴹᵒᵖ}
{Z : Cᴹᵒᵖ}
{f : X ⟶ Y}
{g : Y ⟶ Z}
:
@[simp]
@[simp]
@[simp]
@[simp]
theorem
CategoryTheory.Iso.mop_hom
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
(f : X ≅ Y)
:
(CategoryTheory.Iso.mop f).hom = Quiver.Hom.mop f.hom
@[simp]
theorem
CategoryTheory.Iso.mop_inv
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
(f : X ≅ Y)
:
(CategoryTheory.Iso.mop f).inv = Quiver.Hom.mop f.inv
def
CategoryTheory.Iso.mop
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
{X : C}
{Y : C}
(f : X ≅ Y)
:
An isomorphism in C
gives an isomorphism in Cᴹᵒᵖ
.
Equations
- CategoryTheory.Iso.mop f = CategoryTheory.Iso.mk (Quiver.Hom.mop f.hom) (Quiver.Hom.mop f.inv)
Instances For
instance
CategoryTheory.monoidalCategoryOp
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
:
Equations
- CategoryTheory.monoidalCategoryOp = CategoryTheory.MonoidalCategory.mk
theorem
CategoryTheory.op_tensorObj
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
(X : Cᵒᵖ)
(Y : Cᵒᵖ)
:
theorem
CategoryTheory.op_tensorUnit
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
:
𝟙_ Cᵒᵖ = Opposite.op (𝟙_ C)
instance
CategoryTheory.monoidalCategoryMop
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
:
Equations
- CategoryTheory.monoidalCategoryMop = CategoryTheory.MonoidalCategory.mk
theorem
CategoryTheory.mop_tensorObj
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
(X : Cᴹᵒᵖ)
(Y : Cᴹᵒᵖ)
:
theorem
CategoryTheory.mop_tensorUnit
{C : Type u₁}
[CategoryTheory.Category.{v₁, u₁} C]
[CategoryTheory.MonoidalCategory C]
:
𝟙_ Cᴹᵒᵖ = CategoryTheory.MonoidalOpposite.mop (𝟙_ C)