Zulip Chat Archive
Stream: Is there code for X?
Topic: Quotients for nested relations
Patrick Massot (May 16 2024 at 21:40):
I was not able to find the following, could someone help me?
import Mathlib.Topology.Constructions
lemma sInf_rel {α : Type*} {S : Set (Setoid α)} {x y : α} :
(sInf S).Rel x y ↔ ∀ s ∈ S, s.Rel x y := Iff.rfl
lemma quotient_mk_sInf_eq {α : Type*} {S : Set (Setoid α)} {x y : α} :
Quotient.mk (sInf S) x = Quotient.mk (sInf S) y ↔ ∀ s ∈ S, s.Rel x y := by
simp
rfl
def Setoid.map_of_le {α : Type*} {s t : Setoid α} (h : s ≤ t) : Quotient s → Quotient t :=
Quotient.map' id h
def Setoid.map_sInf {α : Type*} {S : Set (Setoid α)} {s : Setoid α} (h : s ∈ S) :
Quotient (sInf S) → Quotient s :=
Setoid.map_of_le fun _ _ a ↦ a s h
lemma continuous_map_of_le {α : Type*} [TopologicalSpace α]
{s t : Setoid α} (h : s ≤ t) : Continuous (Setoid.map_of_le h) :=
continuous_coinduced_rng
lemma continuous_map_sInf {α : Type*} [TopologicalSpace α]
{S : Set (Setoid α)} {s : Setoid α} (h : s ∈ S) : Continuous (Setoid.map_sInf h) :=
continuous_coinduced_rng
Patrick Massot (May 17 2024 at 02:33):
Anyone for that one? @Yaël Dillies maybe knows the first four declarations?
Yaël Dillies (May 17 2024 at 05:26):
Looking around docs#Setoid.top_def, your first lemma indeed seems to be missing. Your second lemma is a bit weird, no? Your Setoid.map_of_le
is a special case (although not very practically so) of docs#Setoid.mapOfSurjective
Yaël Dillies (May 17 2024 at 05:26):
Also, nifty! You found out that Yaëlbot is not online 24/7 :grinning:
Eric Wieser (May 17 2024 at 07:35):
Your first lemma is closest to docs#Setoid.sInf_def, with some disagreement about a normal form.
Last updated: May 02 2025 at 03:31 UTC