proposition: Lemma rt_chain_iso_pair_ind_iscoeqout (A : C) (v : vertex nat_graph) (Cisp : rt_chain_iso_pair A v) : next_pair_diagram_coeq_arr0 (free_monoid_coeq_sequence_on I_{ V} v) ⊗^{ V}_{r} A · (α^{ V }_{_, _, _} · (T ⊗^{ V}_{l} z_iso_mor (rtisp_riso Cisp) · CoequalizerArrow C (next_pair_diagram_coeq (free_monoid_coeq_sequence_on A v)))) = next_pair_diagram_coeq_arr1 (free_monoid_coeq_sequence_on I_{ V} v) ⊗^{ V}_{r} A · (α^{ V }_{_, _, _} · (T ⊗^{ V}_{l} z_iso_mor (rtisp_riso Cisp) · CoequalizerArrow C (next_pair_diagram_coeq (free_monoid_coeq_sequence_on A v)))).
proof: Proof. set (totrel := rt_chain_iso_pair_rel_impl_total_rel (rtisp_rel Cisp)). apply pathsinv0. etrans. apply assoc. 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. { etrans. exact (pathsinv0 (id_right _)). apply cancel_precomposition. exact (pathsinv0 (bifunctor_leftid V _ _)). } exact (pathsinv0 totrel). } etrans. apply cancel_precomposition. { etrans. apply cancel_postcomposition. apply (bifunctor_leftcomp V). etrans. apply assoc'. apply cancel_precomposition. exact (pathsinv0 (CoequalizerArrowEq _ _)). } etrans. apply assoc. etrans. apply assoc. apply pathsinv0. etrans. apply assoc. etrans. apply assoc. apply cancel_postcomposition. unfold next_pair_diagram_coeq_arr0. etrans. apply cancel_postcomposition. { 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'. apply cancel_precomposition. exact (pathsinv0 (monoidal_associatornatright V _ _ _ _ _)). } etrans. apply assoc'. etrans. apply cancel_precomposition. etrans. apply cancel_postcomposition. apply assoc. etrans. apply assoc'. apply cancel_precomposition. apply (whiskerscommutes V (bifunctor_equalwhiskers V)). etrans. apply assoc. etrans. apply assoc. apply pathsinv0. etrans. apply assoc. etrans. apply assoc. apply cancel_postcomposition. apply pathsinv0. etrans. apply cancel_postcomposition, cancel_precomposition. { etrans. apply cancel_postcomposition. exact (pathsinv0 (monoidal_triangle_identity'_inv V _ _)). etrans. apply assoc'. etrans. apply cancel_precomposition. apply (monoidal_associatorisolaw V). apply id_right. } etrans. apply assoc'. etrans. apply cancel_precomposition. apply (monoidal_leftunitorinvnat V). etrans. apply assoc. apply cancel_postcomposition. exact (rtisp_rel Cisp). 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