Definition inv_profunctor_nat_trans {C₁ C₂ : category} {P Q : profunctor C₁ C₂} {τ : profunctor_nat_trans P Q} (Hτ : is_profunctor_nat_iso τ) : profunctor_nat_trans Q P. Proof. use make_profunctor_nat_trans. - exact (λ y x h, inv_profunctor_nat_iso Hτ h). - abstract (intros y₁ y₂ x₁ x₂ g f h ; cbn ; use (invmaponpathsweq (make_weq _ (Hτ _ _))) ; cbn ; rewrite inv_profunctor_nat_iso_right ; rewrite (profunctor_nat_trans_lmap_rmap τ) ; rewrite inv_profunctor_nat_iso_right ; apply idpath). Defined.
Require Import UniMath.Foundations.All. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Prelude. Require Import UniMath.CategoryTheory.FunctorCategory. Require Import UniMath.CategoryTheory.PrecategoryBinProduct. Require Import UniMath.CategoryTheory.opp_precat. 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.