-
Notifications
You must be signed in to change notification settings - Fork 368
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] - feat(to_additive): unfold lemmas generated by simp
#14628
Conversation
PR summary 360d18f00a
|
File | Base Count | Head Count | Change |
---|---|---|---|
Mathlib.Lean.Name | 3 | 4 | +1 (+33.33%) |
Mathlib.Tactic.ToAdditive | 34 | 39 | +5 (+14.71%) |
Import changes for all files
Files | Import difference |
---|---|
Too many changes (4249)! |
Declarations diff
+ Lean.Meta.unfoldAuxLemmas
+ Lean.Name.isAuxLemma
- addSimpAttr
- addSimpAttrFromSyntax
- addSimpTheorem'
- mkSimpTheoremsFromConst'
You can run this locally as follows
## summary with just the declaration names:
./scripts/no_lost_declarations.sh short <optional_commit>
## more verbose report:
./scripts/no_lost_declarations.sh <optional_commit>
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.
Looks good to me. The best kind of feature is one that's implemented by mostly deleting code!
For due diligence, I'll mention that I think the whole auxLemma business is about trying to avoid re-typechecking proof terms, so unfolding auxLemmas defeats this optimization, however I don't believe that simp's auxLemmas tend to be very complicated.
What's the "feat" here? Is there any visible behavior change, or is this just internal cleanup? |
!bench |
Here are the benchmark results for commit 360d18f. |
See the issues that reference this: one feature request there is now fixed, another bug might be fixed (haven't tested) |
bors merge |
* This removes a bunch of hacky code * Thanks to @kmill for the idea * Also fix a bug in the implementation of `@[to_additive (attr := to_additive, x)]` * The removed test tested for an implementation detail. The rest of the test file (and Mathlib) still passes, which shows that it still works as desired.
Pull request successfully merged into master. Build succeeded: |
simp
simp
@[to_additive (attr := to_additive, x)]