Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make an extensible structure a map from small integers to sets #4495

Open
jkingdon opened this issue Dec 24, 2024 · 2 comments
Open

Make an extensible structure a map from small integers to sets #4495

jkingdon opened this issue Dec 24, 2024 · 2 comments

Comments

@jkingdon
Copy link
Contributor

In set.mm, "map" is not always true because an extensible structure can contain the empty set (not just ordered pairs). It is, however, true for many cases, for example see https://us.metamath.org/mpeuni/cnfldfun.html . For more background, see the https://us.metamath.org/mpeuni/df-struct.html and the section header above it.

My proposal is to make an extensible structure always a map and remove the empty set case. This will require using more sethood hypotheses, but since this is needed in iset.mm anyway (where the current set.mm tricks often won't work), this is well trodden territory. Once you get to anything with M e. Mgm, G e. Grp, etc, then the theorems don't need any changes; it is only an issue up to that point.

How we'd do it:

Further past discussion:

@benjub
Copy link
Contributor

benjub commented Dec 26, 2024

I agree that the fact that (the first components of) extensible structures are not functions is not convenient. You write that defining them as functions "will require using more sethood hypotheses". This is not necessarily the case. The artificial exception made for the empty set in the definition of an extensible structure comes from the fact that a couple (by which I mean "ordered pair", to avoid confusion) constructed from at least one proper class is the empty set (https://us.metamath.org/mpeuni/opprc.html). That peculiar definition has other problems, and a definition of couples working for proper classes and giving a set if and only if its two components are sets would be much more convenient. By this, I mean the two important properties https://us.metamath.org/mpeuni/bj-2uplex.html and https://us.metamath.org/mpeuni/bj-2uplth.html.

Adopting that definition of couples (or any variant satisfying the above two important properties) would solve at once that problem about extensible structures, among others.

@jkingdon
Copy link
Contributor Author

Adopting that definition of couples (or any variant satisfying the above two important properties) would solve at once that problem about extensible structures, among others.

I must admit that questions around the definition of ordered pair were not on my bingo card of what responses I expected to get when I created this issue. That does look like an interesting set of ideas, and there are some literature citations making it interesting reading whether or not we change the main definition of ordered pair in set.mm.

I can think of various considerations around this definition (including how extensible structures work if we adopt it) but even questions of how hard to pull at that thread make me think of getting more input from more people, including using features like polls and upvotes (most obviously achieved via #4288 although I suppose if people don't like that mechanism we could seek another).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants