proposition: Lemma free_monoid_coeq_sequence_on_Tinf_pd_Tinf_map_coeqout_rel (n : nat) (Hn : Tinf_pd_Tinf_map n) (Xn := free_monoid_coeq_sequence_on I_{V} n) : next_pair_diagram_coeq_arr0 (free_monoid_coeq_sequence_on I_{ V} n) ⊗^{ V}_{r} Tinf · (α_{ V } _ _ _ · T ⊗^{ V}_{l} pr12 Hn · Mon_alg_map _ (pr2 TinfM)) = next_pair_diagram_coeq_arr1 (free_monoid_coeq_sequence_on I_{ V} n) ⊗^{ V}_{r} Tinf · (α_{ V } _ _ _ · T ⊗^{ V}_{l} pr12 Hn · Mon_alg_map _ (pr2 TinfM)).
proof: Proof. destruct Hn as [τn [τn1 τcomm]]. apply pathsinv0. etrans. apply cancel_postcomposition. apply maponpaths. apply (bifunctor_leftcomp V). etrans. apply cancel_postcomposition. apply (bifunctor_rightcomp V). etrans. apply assoc. etrans. apply assoc4. etrans. apply cancel_postcomposition, cancel_precomposition. { etrans. apply assoc. etrans. apply cancel_postcomposition. exact (pathsinv0 (monoidal_associatornatleftright V _ _ _ _ _)). etrans. apply assoc'. apply cancel_precomposition. etrans. exact (pathsinv0 (bifunctor_leftcomp V _ _ _ _ _ _)). apply maponpaths. exact τcomm. } etrans. do 2 apply cancel_postcomposition. { etrans. apply maponpaths. apply (bifunctor_leftcomp V). apply (bifunctor_rightcomp V). } etrans. apply cancel_postcomposition, assoc. etrans. apply assoc'. etrans. apply assoc4. etrans. apply cancel_postcomposition, cancel_precomposition. apply (pathsinv0 (monoidal_associatornatleftright V _ _ _ _ _)). etrans. apply cancel_postcomposition, assoc. etrans. apply assoc'. etrans. apply cancel_precomposition. { etrans. apply assoc. apply cancel_postcomposition. etrans. exact (pathsinv0 (bifunctor_leftcomp V _ _ _ _ _ _)). etrans. apply maponpaths. { etrans. apply assoc. apply cancel_postcomposition. etrans. apply assoc. etrans. apply cancel_postcomposition. exact (pathsinv0 (monoidal_associatornatright V _ _ _ _ _)). etrans. apply assoc'. apply cancel_precomposition. apply (whiskerscommutes V (bifunctor_equalwhiskers V)). } etrans. apply maponpaths. { etrans. apply cancel_postcomposition, assoc. etrans. apply assoc'. etrans. apply cancel_precomposition. { etrans. exact (pathsinv0 (id_left _)). etrans. apply cancel_postcomposition. exact (pathsinv0 (pr1 (monoidal_leftunitorisolaw V _))). etrans. apply assoc'. etrans. apply cancel_precomposition. apply assoc. etrans. apply cancel_precomposition. exact (pr22 TinfM). apply id_right. } etrans. apply assoc'. apply cancel_precomposition. apply (monoidal_leftunitornat V). } reflexivity. } etrans. apply cancel_postcomposition. exact (pathsinv0 (monoidal_associatornatleftright V _ _ _ _ _)). etrans. apply assoc'. etrans. apply cancel_precomposition. { etrans. apply assoc. apply cancel_postcomposition. etrans. exact (pathsinv0 (bifunctor_leftcomp V _ _ _ _ _ _)). apply maponpaths. etrans. apply cancel_postcomposition. exact (pathsinv0 (monoidal_triangle_identity'_inv V _ _)). etrans. apply assoc. etrans. apply assoc4. etrans. apply cancel_postcomposition. etrans. apply cancel_precomposition. apply (monoidal_associatorisolaw V). apply id_right. etrans. apply assoc. etrans. apply cancel_postcomposition. apply (monoidal_leftunitorisolaw V). apply id_left. } etrans. apply assoc. etrans. exact (pathsinv0 τcomm). apply pathsinv0. etrans. apply cancel_postcomposition. { etrans. apply (bifunctor_rightcomp V). apply cancel_precomposition. apply (bifunctor_rightcomp V). } etrans. apply assoc'. apply cancel_precomposition. etrans. apply assoc. etrans. apply assoc4. etrans. apply cancel_postcomposition, cancel_precomposition. { etrans. apply assoc. etrans. apply cancel_postcomposition. apply (pathsinv0 (monoidal_associatornatright V _ _ _ _ _)). etrans. apply assoc'. apply cancel_precomposition. apply (whiskerscommutes V (bifunctor_equalwhiskers V)). } etrans. apply cancel_postcomposition, assoc. etrans. apply cancel_postcomposition, assoc. etrans. apply assoc'. etrans. apply cancel_precomposition. { etrans. exact (pathsinv0 (id_left _)). etrans. apply cancel_postcomposition. exact (pathsinv0 (pr1 (monoidal_leftunitorisolaw V _))). etrans. apply assoc'. etrans. apply cancel_precomposition. { etrans. apply assoc. exact (pr22 TinfM). } apply id_right. } etrans. do 3 apply cancel_postcomposition. exact (pathsinv0 (monoidal_triangle_identity'_inv V _ _)). etrans. apply cancel_postcomposition, assoc4. etrans. do 2 apply cancel_postcomposition. etrans. apply cancel_precomposition. apply (monoidal_associatorisolaw V). apply id_right. etrans. apply assoc'. etrans. apply cancel_precomposition. apply (monoidal_leftunitornat V). etrans. apply assoc. etrans. apply cancel_postcomposition. apply (monoidal_leftunitorisolaw V). apply id_left. Qed.
imports: UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.Limits.Graphs.Coequalizers UniMath.CategoryTheory.Limits.Graphs.Colimits UniMath.CategoryTheory.FunctorCategory UniMath.CategoryTheory.whiskering UniMath.CategoryTheory.Chains.Chains UniMath.Combinatorics.StandardFiniteSets UniMath.CategoryTheory.Monoidal.Categories UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors UniMath.CategoryTheory.Monoidal.CategoriesOfMonoids UniMath.ModelCategories.Generated.GenericFreeMonoid UniMath.ModelCategories.Generated.MonoidalHelpers UniMath.ModelCategories.Helpers