Lemma rel_strength_from_signature_laws : rel_strength_pentagon_eq forget H ϛ' × rel_strength_rectangle_eq forget H ϛ'. Proof. split. - intro X. apply nat_trans_eq_alt; intro c. cbn. assert (Hyp := nat_trans_eq_weq (homset_property C) _ _ (θ'_strength_law1 X) c). cbn in Hyp. fold θ' H in Hyp. rewrite (functor_id (H X)). do 2 rewrite id_left. etrans; [| exact Hyp ]. clear Hyp. rewrite <- assoc. apply maponpaths. apply pathsinv0. etrans. { apply pathsinv0. apply id_left. } apply cancel_postcomposition. apply pathsinv0. apply (nat_trans_eq_weq (homset_property C) _ _ (auxH1 H X) c). - intros Z Z' X. apply nat_trans_eq_alt; intro c. cbn. unfold PointedFunctorsComposition.ptd_compose. rewrite functorial_composition_post_pre. assert (Hyp := nat_trans_eq_weq (homset_property C) _ _ (θ'_strength_law2 X Z Z') c). cbn in Hyp. fold θ' H in Hyp. do 2 rewrite functor_id. do 2 rewrite id_right. rewrite (functor_id (H X)). do 2 rewrite id_left. rewrite id_left in Hyp. etrans; [| exact Hyp ]. clear Hyp. apply cancel_postcomposition. etrans; [| apply id_right ]. apply maponpaths. etrans. { use (maponpaths (fun x => pr1 (# H x) c)). + exact (identity (functor_compose (functor_compose (pr1 Z) (pr1 Z')) X)). + apply auxH2aux. } rewrite functor_id. apply idpath. Qed.
Require Import UniMath.Foundations.PartD. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.PointedFunctors. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.HorizontalComposition. Require Import UniMath.CategoryTheory.BicatOfCatsElementary. Require Import UniMath.SubstitutionSystems.Notation. Require Import UniMath.SubstitutionSystems.Signatures. Require Import UniMath.Bicategories.MonoidalCategories.ActionBasedStrength. Require Import UniMath.Bicategories.MonoidalCategories.EndofunctorsMonoidal. Require Import UniMath.Bicategories.MonoidalCategories.PointedFunctorsMonoidal.