proposition: Lemma PairingWithObjectCommutesLeft {C D : category} (H : functor C D) (I : C) : nat_z_iso (H ∙ pair_with_object_left (H I)) (pair_with_object_left I ∙ (pair_functor H H)).
proof: Proof. use make_nat_z_iso. - exists (λ _, identity (H I, H _)). abstract ( intro ; intros ; refine (id_right (identity (H I) #, # H f) @ _) ; refine (_ @ ! id_left (# H (identity I) #, # H f)) ; apply maponpaths_2 ; apply (! functor_id H _)). - intro. exists (identity _). abstract (split ; apply (id_right (identity (H I, H _)))). Defined.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Categories UniMath.CategoryTheory.Core.Isos UniMath.CategoryTheory.Core.Univalence UniMath.CategoryTheory.Core.Functors UniMath.CategoryTheory.Core.NaturalTransformations UniMath.CategoryTheory.FunctorCategory UniMath.CategoryTheory.opp_precat