Zulip Chat Archive
Stream: maths
Topic: Coequilizers
Dean Young (Apr 15 2023 at 02:14):
How might one construct the coequalizer of two parallel functions between types X and Y?
def coeq {X : Type} {Y : Type} (f : X → Y) (g : X → Y) := by
sorry
Adam Topaz (Apr 15 2023 at 02:32):
One approach is to use a quotient
Adam Topaz (Apr 15 2023 at 02:33):
That gives the concrete type. You can also use the category theory library and use colimits
Dean Young (Apr 15 2023 at 18:12):
Do you know where the documentation for an equivalence relation is? How might I fill these in?
variable {X : Type}
variable {p : X → X → Prop}
variable {reflexivity : (x : X) → (p x x)}
variable {symmetry : (x : X) → (p x y) → (p y x)}
variable {transitivity : (x : X) → (y : X) → (z : X) → (p x y) → (p y z) → (p x z)}
def R : equivalence_relation X := by
sorry
def XmodR := by
sorry
Kyle Miller (Apr 15 2023 at 18:15):
docs4#Equivalence (I searched for "equivalence" in the mathlib4 docs to see what it's called now)
Kyle Miller (Apr 15 2023 at 18:16):
docs4#Quotient takes a docs4#Setoid (which is what equivalence relation with its Equivalence proof is called) and gives the quotient.
Last updated: Dec 20 2023 at 11:08 UTC