Deriving RigidCategory instance for braided and left/right rigid categories. #
If X and Y forms an exact pairing in a braided category, then so does Y and X
by composing the coevaluation and evaluation morphisms with associators.
Equations
- One or more equations did not get rendered due to their size.
Instances For
If X has a right dual in a braided category, then it has a left dual.
Equations
- CategoryTheory.BraidedCategory.hasLeftDualOfHasRightDual = { leftDual := Xᘁ, exact := CategoryTheory.BraidedCategory.exactPairing_swap X Xᘁ }
Instances For
If X has a left dual in a braided category, then it has a right dual.
Equations
- CategoryTheory.BraidedCategory.hasRightDualOfHasLeftDual = { rightDual := ᘁX, exact := CategoryTheory.BraidedCategory.exactPairing_swap (ᘁX) X }
Instances For
If a braided category is right-rigid, then it is left-rigid. Not registered as an instance as this is not canonical enough.
Equations
Instances For
If a braided category is left-rigid, then it is right-rigid. Not registered as an instance as this is not canonical enough.
Equations
- CategoryTheory.BraidedCategory.rightRigidCategoryOfLeftRigidCategory = { rightDual := fun (X : C) => CategoryTheory.BraidedCategory.hasRightDualOfHasLeftDual }
Instances For
If C is a braided and right rigid category, then it is a rigid category.
Not registered as an instance as this is not canonical enough.
Equations
- CategoryTheory.BraidedCategory.rigidCategoryOfRightRigidCategory = { rightDual := inferInstance, leftDual := fun (X : C) => CategoryTheory.BraidedCategory.hasLeftDualOfHasRightDual }
Instances For
If C is a braided and left rigid category, then it is a rigid category.
Not registered as an instance as this is not canonical enough.
Equations
- CategoryTheory.BraidedCategory.rigidCategoryOfLeftRigidCategory = { rightDual := fun (X : C) => CategoryTheory.BraidedCategory.hasRightDualOfHasLeftDual, leftDual := inferInstance }