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