Definition weq_iso_prod_of_twosided_disp_cat {x₁ x₂ : C₁} {y₁ y₂ : C₂} {f : z_iso x₁ x₂} {g : z_iso y₁ y₂} (xy₁₁ : D₁ x₁ y₁) (xy₁₂ : D₂ x₁ y₁) (xy₂₁ : D₁ x₂ y₂) (xy₂₂ : D₂ x₂ y₂) :(iso_twosided_disp f g xy₁₁ xy₂₁ × iso_twosided_disp f g xy₁₂ xy₂₂) ≃ @iso_twosided_disp _ _ prod_of_twosided_disp_cat _ _ _ _ f g (xy₁₁ ,, xy₁₂) (xy₂₁ ,, xy₂₂). Proof. use weq_iso. - exact make_iso_prod_of_twosided_disp_cat. - exact from_iso_prod_of_twosided_disp_cat. - abstract (intro fg ; use pathsdirprod ; (use subtypePath ; [ intro ; apply isaprop_is_iso_twosided_disp | ] ; apply idpath)). - abstract (intro fg ; use subtypePath ; [ intro ; apply isaprop_is_iso_twosided_disp | ] ; apply idpath). 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.Isos. Require Import UniMath.CategoryTheory.Core.Univalence. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.TwoSidedDispCat. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Isos. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Univalence. Require Import UniMath.CategoryTheory.TwoSidedDisplayedCats.Discrete.