Lemma action_triangle_eq_from_alt: action_triangle_eq odot ϱ χ. Proof. intros a v. cbn. unfold functor_fix_fst_arg_ob. rewrite id_left. rewrite functor_id. do 2 rewrite id_left. rewrite id_right. assert (Hunital1 := pr1 (FFunital v)). apply (maponpaths pr1) in Hunital1. apply toforallpaths in Hunital1. assert (Hunital1inst := Hunital1 a). cbn in Hunital1inst. rewrite id_right in Hunital1inst. apply pathsinv0. transparent assert (aux: (is_z_isomorphism (# (FF v: functor A A) (ϵ_inv a)))). { apply functor_on_is_z_isomorphism. transparent assert (aux1: (is_nat_z_iso ϵ_inv)). { use nat_trafo_pointwise_z_iso_if_z_iso; [apply A |]. apply is_z_iso_inv_from_z_iso. } apply aux1. } apply (z_iso_inv_to_left(C:=A) _ _ _ (# (FF v: functor A A) (ϵ_inv a),,aux)). unfold inv_from_z_iso. cbn. rewrite assoc. apply pathsinv0. etrans. 2: { exact Hunital1inst. } assert (aux2 := functor_id FF v). apply (maponpaths pr1) in aux2. apply toforallpaths in aux2. exact (aux2 a). Qed.
Require Import UniMath.Foundations.PartD. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.Monoidal.AlternativeDefinitions.MonoidalCategoriesTensored. Require Import UniMath.CategoryTheory.Monoidal.AlternativeDefinitions.MonoidalFunctorsTensored. Require Import UniMath.Bicategories.MonoidalCategories.EndofunctorsMonoidal.