Definition strong_functor_composition {F : functor_monoidal_cat luC luD ruC ruD αC αD} {G : functor_monoidal_cat luD luE ruD ruE αD αE} (FF : functor_strong_monoidal_disp_cat luC luD ruC ruD αC αD F) (GG : functor_strong_monoidal_disp_cat luD luE ruD ruE αD αE G) : functor_strong_monoidal_disp_cat luC luE ruC ruE αC αE (_,, functor_monoidal_composition (pr2 F) (pr2 G)). Proof. split. - intro cc. use is_z_isomorphism_comp. 2: apply (pr2 (functor_on_z_iso (pr11 G) (_,, pr1 FF cc))). exact (pr1 GG ((pr111 F) (pr1 cc), (pr111 F) (pr2 cc))). - use is_z_isomorphism_comp. + exact (pr2 GG). + exact (pr2 (functor_on_z_iso (pr11 G) (make_z_iso' _ (pr2 FF)))). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.Core.NaturalTransformations. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.whiskering. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Total. Require Import UniMath.CategoryTheory.DisplayedCats.Constructions. Require Import UniMath.CategoryTheory.DisplayedCats.Univalence. Require Import UniMath.CategoryTheory.Monoidal.AlternativeDefinitions.MonoidalCategoriesTensored.