Definition comp_v_profunctor_square_mor {C₁ C₂ D₁ D₂ E₁ E₂ : category} {F₁ : C₁ ⟶ C₂} {F₂ : D₁ ⟶ D₂} {F₃ : E₁ ⟶ E₂} {P₁ : C₁ ↛ D₁} {Q₁ : D₁ ↛ E₁} {P₂ : C₂ ↛ D₂} {Q₂ : D₂ ↛ E₂} (τ : profunctor_square F₂ F₁ P₁ P₂) (θ : profunctor_square F₃ F₂ Q₁ Q₂) (z : E₁) (x : C₁) : comp_profunctor P₁ Q₁ z x → comp_profunctor P₂ Q₂ (F₃ z) (F₁ x). Proof. use from_comp_profunctor_ob. - exact (λ y h h', comp_profunctor_ob_in P₂ Q₂ (F₂ y) (τ y x h) (θ z y h')). - abstract (intros y₁ y₂ g h h' ; cbn ; rewrite (profunctor_square_rmap θ) ; rewrite (profunctor_square_lmap τ) ; rewrite comp_profunctor_ob_in_comm ; apply idpath). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.Categories.HSET.All. Require Import UniMath.CategoryTheory.Categories.HSET.SetCoends. Require Import UniMath.CategoryTheory.Profunctors.Core. Require Import UniMath.CategoryTheory.Profunctors.Examples. Require Import UniMath.CategoryTheory.Profunctors.Transformation.