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

refactor(set_theory/cardinal/basic): constrain universes #15041

Open
wants to merge 33 commits into
base: master
Choose a base branch
from

Conversation

vihdzp
Copy link
Collaborator

@vihdzp vihdzp commented Jun 28, 2022

We enforce a canonical way to compare cardinals a and b of different universes u and v, namely to compare cardinal.lift.{v} a and cardinal.lift.{u} b. By doing this, we alleviate some of the universe hell going on with cardinal.lift.

We rename basis.mk_eq_dim'' to basis.mk_eq_dim', since the latter name was used for a non-complying theorem that has been purged.


Open in Gitpod

@vihdzp vihdzp added awaiting-review The author would like community review of the PR awaiting-CI The author would like to see what CI has to say before doing more work. labels Jun 28, 2022
@vihdzp vihdzp changed the title refactor(set_theory/cardinal/basic): enforce canonical way to compare ordinals of different universes refactor(set_theory/cardinal/basic): constrain universes Jun 28, 2022
@github-actions github-actions bot removed the awaiting-CI The author would like to see what CI has to say before doing more work. label Jun 29, 2022
@vihdzp vihdzp requested a review from eric-wieser June 29, 2022 04:34
@urkud
Copy link
Member

urkud commented Jul 8, 2022

LGTM but let's wait for one more pair of eyes: I don't want to make decisions about universe-related questions by myself.

@vihdzp
Copy link
Collaborator Author

vihdzp commented Jul 8, 2022

Thanks! By the way, should I add a library note explaining the changes here?

@urkud
Copy link
Member

urkud commented Jul 8, 2022

Yes.

bors bot pushed a commit that referenced this pull request Jul 20, 2022
We introduce dot notation lemmas for proving something of the form `type r < type s` or `type r ≤ type s` by providing a principal segment, an initial segment, or a relation embedding. We rename `type_le` and `type_le'` to `type_le_iff` and `type_le_iff'` for consistency with `type_lt_iff` (which can't be renamed to `type_lt`, as this is an existing theorem about `type (<)`).

We could introduce `lift` variants of these, but I'd rather wait until #15041 is merged, at which point I can do the analogous refactor on ordinals.
joelriou pushed a commit that referenced this pull request Jul 23, 2022
We introduce dot notation lemmas for proving something of the form `type r < type s` or `type r ≤ type s` by providing a principal segment, an initial segment, or a relation embedding. We rename `type_le` and `type_le'` to `type_le_iff` and `type_le_iff'` for consistency with `type_lt_iff` (which can't be renamed to `type_lt`, as this is an existing theorem about `type (<)`).

We could introduce `lift` variants of these, but I'd rather wait until #15041 is merged, at which point I can do the analogous refactor on ordinals.
@semorrison
Copy link
Collaborator

Sorry this has taken a long time. I am skeptical about the loss of generality, but if you can convince someone who know about the cardinal library I'm not going to object.

In the meantime, there are now merge conflicts with master. If you'd still like to proceed with this, can you please merge master?

@semorrison semorrison added awaiting-author A reviewer has asked the author a question or requested changes and removed awaiting-review The author would like community review of the PR labels Nov 10, 2022
@vihdzp vihdzp added awaiting-review The author would like community review of the PR and removed awaiting-author A reviewer has asked the author a question or requested changes labels Apr 5, 2023
@vihdzp
Copy link
Collaborator Author

vihdzp commented Apr 5, 2023

The recent renaming of vector space dimension theorems caused some annoying merge conflicts, but they seem to be fixed now.

1 similar comment
@vihdzp
Copy link
Collaborator Author

vihdzp commented Apr 5, 2023

The recent renaming of vector space dimension theorems caused some annoying merge conflicts, but they seem to be fixed now.

@eric-wieser
Copy link
Member

Apologies, my ongoing dimension refactor has created a few more conflicts, hopefully minor.

@eric-wieser
Copy link
Member

CI is failing

Parcly-Taxel added a commit to leanprover-community/mathlib4 that referenced this pull request Apr 9, 2023
@vihdzp
Copy link
Collaborator Author

vihdzp commented Apr 9, 2023

CI passes now. If we want this before the mathlib4 port of the vector space files it's probably best to merge this before any other major changes to these files.

@alreadydone
Copy link
Collaborator

maintainer merge

@github-actions
Copy link

🚀 Pull request has been placed on the maintainer queue by alreadydone.

@semorrison
Copy link
Collaborator

I think per https://leanprover.zulipchat.com/#narrow/stream/113488-general/topic/New.20policy.20regarding.20mathlib3.20PRs.20that.20touch.20ported.20files this can't be merged for now, unless there is some reason this is needed for porting to proceed.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's a build error in this file

@semorrison semorrison added the too-late This PR was ready too late for inclusion in mathlib3 label Jul 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-review The author would like community review of the PR modifies-synchronized-file This PR touches a files that has already been ported to mathlib4, and may need a synchronization PR. too-late This PR was ready too late for inclusion in mathlib3
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants