Definition double_functor_hor_comp_laws {C₁ C₂ : category} {D₁ : twosided_disp_cat C₁ C₁} {D₂ : twosided_disp_cat C₂ C₂} {F : C₁ ⟶ C₂} {FF : twosided_disp_functor F F D₁ D₂} {Cm₁ : hor_comp D₁} {Cm₂ : hor_comp D₂} (FC : double_functor_hor_comp_data FF Cm₁ Cm₂) : UU := ∏ (x₁ x₂ y₁ y₂ z₁ z₂ : C₁) (v₁ : x₁ --> x₂) (v₂ : y₁ --> y₂) (v₃ : z₁ --> z₂) (h₁ : D₁ x₁ y₁) (h₂ : D₁ x₂ y₂) (k₁ : D₁ y₁ z₁) (k₂ : D₁ y₂ z₂) (s₁ : h₁ -->[ v₁ ][ v₂ ] h₂) (s₂ : k₁ -->[ v₂ ][ v₃ ] k₂), double_hor_comp_mor Cm₂ (#2 FF s₁) (#2 FF s₂) ;;2 FC _ _ _ _ _ = transportb_disp_mor2 (id_right _ @ !(id_left _)) (id_right _ @ !(id_left _)) (FC _ _ _ _ _ ;;2 #2 FF (double_hor_comp_mor Cm₁ s₁ s₂)).
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.Isos. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Isos. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.DisplayedFunctor. Require Import UniMath.Bicategories.DoubleCategories.Basics.DoubleCategoryBasics.