Definition z_iso_disp_prod1 {x : C} (xx1 xx1' : D1 x) (xx2 xx2' : D2 x) : @z_iso_disp _ dirprod_disp_cat _ _ (identity_z_iso x) (xx1,, xx2) (xx1',, xx2') → (z_iso_disp (identity_z_iso x) xx1 xx1') × (z_iso_disp (identity_z_iso x) xx2 xx2'). Proof. unfold z_iso_disp. cbn. intros [[f1 f2] Hff]. destruct Hff as [[g1 g2] Hfg]. cbn in Hfg. destruct Hfg as [Hgf Hfg]. use tpair. - exists f1, g1. split. + etrans. apply (maponpaths dirprod_pr1 Hgf). apply pr1_transportf. + etrans. apply (maponpaths dirprod_pr1 Hfg). apply pr1_transportf. - exists f2, g2. split. + etrans. apply (maponpaths dirprod_pr2 Hgf). apply pr2_transportf. + etrans. apply (maponpaths dirprod_pr2 Hfg). apply pr2_transportf. Defined.
Require Import UniMath.Foundations.Sets. Require Import UniMath.MoreFoundations.All. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Core.Functors. Require Import UniMath.CategoryTheory.DisplayedCats.Core. Require Import UniMath.CategoryTheory.DisplayedCats.Functors. Require Import UniMath.CategoryTheory.DisplayedCats.Isos. Require Import UniMath.CategoryTheory.DisplayedCats.Univalence.