Lemma equiv_isEqualizer1 {a b : C} {f g : C⟦a, b⟧} (e : C) (h : C⟦e, a⟧) (H : h · f = h · g) : Limits.Equalizers.isEqualizer f g h H -> isEqualizer C f g e h H. Proof. intros X. set (E := Limits.Equalizers.make_Equalizer f g h H X). use (make_isEqualizer C). intros e' h' H'. use (unique_exists (Limits.Equalizers.EqualizerIn E e' h' H')). - exact (Limits.Equalizers.EqualizerCommutes E e' h' H'). - intros y. apply hs. - intros y T. cbn in T. use (Limits.Equalizers.EqualizerInsEq E). use (pathscomp0 T). exact (!(Limits.Equalizers.EqualizerCommutes E e' h' H')). Qed.
Require Import UniMath.Foundations.PartD. Require Import UniMath.Foundations.Propositions. Require Import UniMath.Foundations.Sets. Require Import UniMath.MoreFoundations.Tactics. Require Import UniMath.Combinatorics.StandardFiniteSets. Require Import UniMath.CategoryTheory.Core.Categories. Require Import UniMath.CategoryTheory.Core.Isos. Require Import UniMath.CategoryTheory.Limits.Graphs.Limits. Require Import UniMath.CategoryTheory.Limits.Graphs.Colimits. Require Import UniMath.CategoryTheory.Limits.Equalizers.