proposition: Proposition isBinProduct_to_isPullback_cod_fib_unique : isaprop (∑ (hk : w --> pr1 gp), hk · pr1 π₁ = φ × hk · pr1 π₂ = ψ).
proof: Proof. use invproofirrelevance. intros ζ₁ ζ₂. use subtypePath. { intro. apply isapropdirprod ; apply homset_property. } use (maponpaths dom_mor (BinProductArrowsEq _ _ _ P wh (_ ,, _) (_ ,, _) _ _)). - cbn. etrans. { apply maponpaths. exact (!(mor_eq π₁)). } rewrite !assoc. etrans. { apply maponpaths_2. exact (pr12 ζ₁). } rewrite id_right. apply idpath. - cbn. etrans. { apply maponpaths. exact (!(mor_eq π₁)). } rewrite !assoc. etrans. { apply maponpaths_2. exact (pr12 ζ₂). } rewrite id_right. apply idpath. - use eq_mor_cod_fib. refine (comp_in_cod_fib _ _ @ _ @ !(comp_in_cod_fib _ _)). cbn. exact (pr12 ζ₁ @ !(pr12 ζ₂)). - use eq_mor_cod_fib. refine (comp_in_cod_fib _ _ @ _ @ !(comp_in_cod_fib _ _)). cbn. exact (pr22 ζ₁ @ !(pr22 ζ₂)). Qed.
imports: UniMath.Foundations.All UniMath.MoreFoundations.All UniMath.CategoryTheory.Core.Prelude UniMath.CategoryTheory.Adjunctions.Core UniMath.CategoryTheory.Limits.Terminal UniMath.CategoryTheory.Limits.BinProducts UniMath.CategoryTheory.Limits.Equalizers UniMath.CategoryTheory.Limits.Pullbacks UniMath.CategoryTheory.Limits.PullbackConstructions UniMath.CategoryTheory.Limits.Preservation UniMath.CategoryTheory.DisplayedCats.Core UniMath.CategoryTheory.DisplayedCats.Fibrations UniMath.CategoryTheory.DisplayedCats.Fiber UniMath.CategoryTheory.DisplayedCats.Codomain UniMath.CategoryTheory.DisplayedCats.FiberwiseTerminal UniMath.CategoryTheory.DisplayedCats.FiberwiseProducts UniMath.CategoryTheory.DisplayedCats.FiberwiseEqualizers UniMath.CategoryTheory.DisplayedCats.Codomain.FiberCod UniMath.CategoryTheory.DisplayedCats.Codomain.CodLeftAdjoint