Proposition lassociator_hexagon_two (VC : category) (TV : Terminal VC) (VP : BinProducts VC) (expV : Exponentials VP) (V : sym_mon_closed_cat := sym_mon_closed_cartesian_cat VC VP TV expV) (x y z : V) : mon_lassociator x y z · sym_mon_braiding V x _ · mon_lassociator y z x · sym_mon_braiding V y _ · mon_lassociator z x y = sym_mon_braiding V _ z. Proof. use BinProductArrowsEq ; cbn. - rewrite !assoc'. rewrite !BinProductPr1Commutes. etrans. { do 3 apply maponpaths. rewrite !assoc. rewrite BinProductPr1Commutes. apply idpath. } rewrite !cartesian_semi_cart_tensor_pr2. etrans. { do 2 apply maponpaths. rewrite !assoc. apply maponpaths_2. apply BinProductPr2Commutes. } rewrite BinProductPr1Commutes. etrans. { apply maponpaths. rewrite !assoc. apply maponpaths_2. apply BinProductPr1Commutes. } rewrite !assoc. rewrite !BinProductPr2Commutes. apply idpath. - rewrite !assoc'. rewrite !BinProductPr2Commutes. rewrite !cartesian_semi_cart_tensor_pr1, !cartesian_semi_cart_tensor_pr2. use BinProductArrowsEq. + rewrite !assoc'. rewrite !BinProductPr1Commutes. etrans. { do 3 apply maponpaths. rewrite !assoc. rewrite BinProductPr1Commutes. apply idpath. } etrans. { do 2 apply maponpaths. rewrite !assoc. rewrite !BinProductPr2Commutes. apply idpath. } rewrite !BinProductPr2Commutes. rewrite !BinProductPr1Commutes. apply idpath. + rewrite !assoc'. rewrite !BinProductPr2Commutes. etrans. { do 2 apply maponpaths. rewrite BinProductPr1Commutes. apply idpath. } etrans. { apply maponpaths. rewrite !assoc. rewrite !BinProductPr1Commutes. apply idpath. } rewrite !assoc. rewrite !BinProductPr2Commutes. rewrite !BinProductPr1Commutes. apply idpath. Qed.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.exponentials. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.Structure.Cartesian. Require Import UniMath.CategoryTheory.Monoidal.Structure.Symmetric. Require Import UniMath.CategoryTheory.Monoidal.Structure.Closed. Require Import UniMath.CategoryTheory.Limits.BinProducts. Require Import UniMath.CategoryTheory.Limits.Terminal. Require Import UniMath.CategoryTheory.Categories.HSET.Core. Require Import UniMath.CategoryTheory.Categories.HSET.Limits. Import BifunctorNotations. Import MonoidalNotations. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Adjunctions.Core.