[Merged by Bors] - chore(Analysis/Convex/Approximation): reuse sSup_of_nat_affine_eq#37981
[Merged by Bors] - chore(Analysis/Convex/Approximation): reuse sSup_of_nat_affine_eq#37981yuanyi-350 wants to merge 6 commits intoleanprover-community:masterfrom
sSup_of_nat_affine_eq#37981Conversation
PR summary 1a3500f1bfImport changes for modified filesNo significant changes to the import graph Import changes for all files
Declarations diffNo declarations were harmed in the making of this PR! 🐙 You can run this locally as follows## summary with just the declaration names:
./scripts/pr_summary/declarations_diff.sh <optional_commit>
## more verbose report:
./scripts/pr_summary/declarations_diff.sh long <optional_commit>The doc-module for No changes to technical debt.You can run this locally as
|
Co-authored-by: Monica Omar <23701951+themathqueen@users.noreply.github.com>
|
Can you also comment on the performance of this change? Thanks! |
|
!bench |
|
Benchmark results for c33ff46 against 1a3500f are in. No significant results found. @yuanyi-350
Small changes (1✅, 2🟥)
|
themathqueen
left a comment
There was a problem hiding this comment.
Thanks. I think this is fine.
|
I ran a profiler comparison for the changed declaration in this PR. Results (
Overall:
Caveat:
|
|
Thanks! |
|
As side note, 12 seconds for a single declaration is very slow --- this is suspicious (but unrelated to this PR). |
There is absolutely no way that takes 12 seconds (unless I'm misunderstanding something). It compiles almost instantly on the web editor. Could it be that they meant 0.12? |
|
Pull request successfully merged into master. Build succeeded:
|
sSup_of_nat_affine_eqsSup_of_nat_affine_eq
I disagree: running this locally in VS Code, I see the orange bars disappear quickly except on the declaration itself --- i.e., it is kernel checking which is taking so long. This takes several seconds on my computer, so 12 seconds seems possible. |
This PR shortens the proof of
univ_sSup_of_nat_affine_eqby applying the already available theoremsSup_of_nat_affine_eqtos = univ. This removes the ad hoc split on whether the family is empty, and reuses the more general result instead.This is extracted from #37968.