Transport a monoidal structure along an equivalence. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
When C
and D
are equivalent as categories,
we can transport a monoidal structure on C
along the equivalence,
obtaining a monoidal structure on D
.
We then upgrade the original functor and its inverse to monoidal functors
with respect to the new monoidal structure on D
.
Transport a monoidal structure along an equivalence of (plain) categories.
Equations
- category_theory.monoidal.transport e = {tensor_obj := λ (X Y : D), e.functor.obj (e.inverse.obj X ⊗ e.inverse.obj Y), tensor_hom := λ (W X Y Z : D) (f : W ⟶ X) (g : Y ⟶ Z), e.functor.map (e.inverse.map f ⊗ e.inverse.map g), tensor_id' := _, tensor_comp' := _, tensor_unit := e.functor.obj (𝟙_ C), associator := λ (X Y Z : D), e.functor.map_iso (((e.unit_iso.app (e.inverse.obj X ⊗ e.inverse.obj Y)).symm ⊗ category_theory.iso.refl (e.inverse.obj Z)) ≪≫ α_ (e.inverse.obj X) (e.inverse.obj Y) (e.inverse.obj Z) ≪≫ (category_theory.iso.refl (e.inverse.obj X) ⊗ e.unit_iso.app (e.inverse.obj Y ⊗ e.inverse.obj Z))), associator_naturality' := _, left_unitor := λ (X : D), e.functor.map_iso (((e.unit_iso.app (𝟙_ C)).symm ⊗ category_theory.iso.refl (e.inverse.obj X)) ≪≫ λ_ (e.inverse.obj X)) ≪≫ e.counit_iso.app X, left_unitor_naturality' := _, right_unitor := λ (X : D), e.functor.map_iso ((category_theory.iso.refl (e.inverse.obj X) ⊗ (e.unit_iso.app (𝟙_ C)).symm) ≪≫ ρ_ (e.inverse.obj X)) ≪≫ e.counit_iso.app X, right_unitor_naturality' := _, pentagon' := _, triangle' := _}
A type synonym for D
, which will carry the transported monoidal structure.
Equations
Instances for category_theory.monoidal.transported
We can upgrade e.functor
to a lax monoidal functor from C
to D
with the transported structure.
Equations
- category_theory.monoidal.lax_to_transported e = {to_functor := e.functor, ε := 𝟙 (e.functor.obj (𝟙_ C)), μ := λ (X Y : C), e.functor.map (e.unit_inv.app X ⊗ e.unit_inv.app Y), μ_natural' := _, associativity' := _, left_unitality' := _, right_unitality' := _}
We can upgrade e.functor
to a monoidal functor from C
to D
with the transported structure.
Equations
We can upgrade e.inverse
to a monoidal functor from D
with the transported structure to C
.
The unit isomorphism upgrades to a monoidal isomorphism.
The counit isomorphism upgrades to a monoidal isomorphism.