Proposition is_scott_continuous_equalizer_map {W : dcpo} (h : scott_continuous_map W X) (p : (λ w : W, f (h w)) = (λ w : W, g (h w))) : is_scott_continuous W equalizer_dcpo (λ w, h w ,, eqtohomot p w). Proof. use make_is_scott_continuous. - exact (Equalizer_map_monotone X Y f g W (pr12 h) (eqtohomot p)). - intro D. use subtypePath. { intro. apply propproperty. } cbn. rewrite scott_continuous_map_on_lub. use antisymm_dcpo. + use dcpo_lub_is_least ; cbn. intro i. use less_than_dcpo_lub ; [ exact i | ] ; cbn. apply refl_dcpo. + use dcpo_lub_is_least ; cbn. intro i. use less_than_dcpo_lub ; [ exact i | ] ; cbn. apply refl_dcpo. Qed.
Require Import UniMath.MoreFoundations.All. Require Import UniMath.OrderTheory.Posets.Basics. Require Import UniMath.OrderTheory.Posets.PointedPosets. Require Import UniMath.OrderTheory.Posets.MonotoneFunctions. Require Import UniMath.OrderTheory.DCPOs.Core.DirectedSets. Require Import UniMath.OrderTheory.DCPOs.Core.Basics. Require Import UniMath.OrderTheory.DCPOs.Core.ScottContinuous.