Zulip Chat Archive

Stream: general

Topic: filter map on the set level


Bernd Losert (Jan 06 2022 at 23:09):

Say I have m : set α → set α and f : filter α. How do I "map" m on f?

Floris van Doorn (Jan 06 2022 at 23:10):

You need some conditions on m to know that any such result is again a filter.

Bernd Losert (Jan 06 2022 at 23:11):

I'm not too worried about that since I can use filter.generate to get a filter back.

Floris van Doorn (Jan 06 2022 at 23:11):

maybe docs#filter.map and docs#filter.comap are relevant.

Bernd Losert (Jan 06 2022 at 23:11):

Unfortunately, map and comap are not going to work.

Floris van Doorn (Jan 06 2022 at 23:13):

It sounds like you want something like

def my_map {α β} (m : set α  set β) (f : filter α) : filter β :=
filter.generate (m '' f.sets)

I don't know if that is a sensible construction though.

Bernd Losert (Jan 06 2022 at 23:14):

Remind me what '' does.

Floris van Doorn (Jan 06 2022 at 23:15):

it's the image of a set under a function, docs#set.image

Bernd Losert (Jan 06 2022 at 23:15):

Ah, that's right. I had forgotten about it. Thanks.

Floris van Doorn (Jan 06 2022 at 23:21):

I think the bigger question is: what do you want this map of m on f to do, or what properties do you want it do have?

Adam Topaz (Jan 06 2022 at 23:29):

Isn't there some Galois connection between sets and filters somewhere?

Floris van Doorn (Jan 06 2022 at 23:39):

sure: docs#filter.gi_generate

Bernd Losert (Jan 06 2022 at 23:41):

Floris van Doorn said:

I think the bigger question is: what do you want this map of m on f to do, or what properties do you want it do have?

I have defined the closure cl of a set as an operator of type set X -> set X. I want to build the "closure" of a filter by applying cl to each of the sets in the filter.


Last updated: Dec 20 2023 at 11:08 UTC