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
[Merged by Bors] - refactor(data/*/interval): generalize finset.Ico
to locally finite orders
#7987
Conversation
I don't think you need I don't understand why we would want to get rid of The Ico function you have built is good for proving things about the properties of the function, but it is not good for performance. I think we should retain the It might make sense to rename the class to just |
Noted for My reasoning was that if we could achieve what those do (including in terms of performance), then we might as well use them. But I see we are nowhere near that. So, yeah, probably not worth doing. There are many many things which could be qualified of What's your opinion about whether the function field should be |
(for instance, mathlib already has locally finite topological spaces) |
Okay so I think this is ready for a PR. I'm offering not to touch any other file yet, because there's already a good deal of material to be reviewed. If all goes well, I will move all the finset stuff in |
You're going to have to at least remove the definition of I don't think the API for In |
Okay well then I have to also adapt the existing API in |
🎉 Great news! Looks like all the dependencies have been resolved:
💡 To add or remove a dependency please update this issue/PR description. Brought to you by Dependent Issues (:robot: ). Happy coding! |
@YaelDillies This PR is touch 34 files. It is not exactly clear to me what it is doing. Could you please write a bit more extensive PR description? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks 🎉
bors merge
…orders (#7987) `finset.Ico` currently goes `ℕ → ℕ → finset ℕ`. This generalizes it to `α → α → finset α` where `locally_finite_order α`. This also ports all the existing `finset.Ico` lemmas to the new API, which involves renaming and moving them to `data.finset.interval` or `data.nat.interval` depending on whether I could generalize them away from `ℕ` or not. Co-authored-by: Yury G. Kudryashov <urkud@urkud.name>
Pull request successfully merged into master. Build succeeded: |
finset.Ico
to locally finite ordersfinset.Ico
to locally finite orders
finset.Ico
currently goesℕ → ℕ → finset ℕ
. This generalizes it toα → α → finset α
wherelocally_finite_order α
.This also ports all the existing
finset.Ico
lemmas to the new API, which involves renaming and moving them todata.finset.interval
ordata.nat.interval
depending on whether I could generalize them away fromℕ
or not.fin n
#9523