Definition make_left_closed_universal (x y : V) : is_universal_arrow_from (rightwhiskering_functor V x) y (HomV x y) (eval x y). Proof. intros z f. use iscontraprop1. - abstract (use invproofirrelevance ; intros φ₁ φ₂ ; use subtypePath ; [ intro ; apply homset_property | ] ; refine (etaEq _ _ _ _ @ _ @ !(etaEq _ _ _ _)) ; apply maponpaths ; refine (_ @ !(pr2 φ₁) @ pr2 φ₂ @ !_) ; apply maponpaths_2 ; refine (_ @ id_right _) ; unfold rightwhiskering_on_morphisms ; unfold monoidal_cat_tensor_mor ; unfold functoronmorphisms1 ; apply maponpaths ; apply (bifunctor_leftid V)). - simple refine (_ ,, _). + exact (lam x y z f). + abstract (refine (!(betaEq x y z f) @ _) ; cbn ; apply maponpaths_2 ; refine (_ @ id_right _) ; unfold rightwhiskering_on_morphisms ; unfold monoidal_cat_tensor_mor ; unfold functoronmorphisms1 ; apply maponpaths ; apply (bifunctor_leftid V)). 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.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.Adjunctions.Core. Require Import UniMath.CategoryTheory.Monoidal.WhiskeredBifunctors. Require Import UniMath.CategoryTheory.Monoidal.Categories. Require Import UniMath.CategoryTheory.Monoidal.Structure.Symmetric. Import MonoidalNotations.