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
feat(tactic/positivity): Extension for subtraction #16632
Conversation
I don't really like this feature; I think it muddies the waters, making the tactic's behaviour less human-predictable. @digama0 thoughts? |
This allows me to prove The more general problem is that I can't insert manually non-
The point is that the general solution is a general improvement, but we can do better on a case-by-case basis. |
I guess we have different aesthetics, then, because a line of Mario also suggested this. |
Also, the have's don't clutter the context since |
Personally, I think it is okay to have specifically Yael, it is specifically part of the design of the tactic that you are supposed to supply proofs to it with @hrmacbeth You said |
I know, but I maintain my claim. There's more to the story though. Those non- My full dream is to have these decision procedures call each other, possibly in loops (so long as at least one of the procedures along the loop recursed on the structure of the This is reminiscent of Aesop's architecture and any work towards this will make it easier to port the already existing decision procedures ( |
I get it. That's not what this tactic is for though. This is specifically intended to be a tactic with defined scope and not a kitchen sink tactic, so we always have to be vigilant against scope creep. For example you could argue that maybe |
Indeed, sorry for the confusion! |
By the way, @YaelDillies, I wonder if there's a bit of code smell in your encountering a goal of 0 < min (1 / (2 * ⌈4/ε⌉₊^3)) ((1 - ε/4) * (ε/(16 * bound (ε/8) ⌈4/ε⌉₊))^3) I'd typically use the archimedean principle to get something like, "there exists a natural number |
The point is to provide an explicit bound for the triangle removal lemma. Note that the |
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.
One argument which I'm not sure is in favour of this PR or not, is that simpa
can already solve 0 < a - b
given b < a
using sub_pos
.
That doesn't help when it's needed within an expression. For example, just a day after I opened this PR, James encountered a goal of |
This PR has been sitting open for a while, can we come to a conclusion? As I understand it, the objection is that |
I am not really qualified to comment here, but I think this is not a goal you want to use |
The alternative is to write A middle ground would be to run the |
Closing in favor of leanprover-community/mathlib4#2427 |
A best effort
positivity
extension fora - b
. It looks for a proof ofa ≤ b
/a < b
in context.