Zulip Chat Archive
Stream: mathlib4
Topic: Speculative inequality tactics
Heather Macbeth (Sep 20 2025 at 12:43):
(Among other things, we don't have a negativity discharger tactic.)
Jovan Gerbscheid (Sep 20 2025 at 12:45):
Though if we had such a discharger tactic, I would expect it to be implemented as part of the positivity tactic.
Jovan Gerbscheid (Sep 20 2025 at 12:48):
So that it could for example also do this:
example (n m : ℤ) (hn : n < 0) (hm : m < 0) : 0 < n * m := by
positivity
Aaron Liu (Sep 20 2025 at 12:49):
that feels like some sort of negativity
Aaron Liu (Sep 20 2025 at 12:50):
should we still call it positivity if it's doing negativity too?
Jovan Gerbscheid (Sep 20 2025 at 12:51):
Yes? It's already doing non-zero-ness as well, and we don't call it positivity_non_zero_ness
Jovan Gerbscheid (Sep 20 2025 at 12:52):
Although maybe one day we will have a tactic subsuming gcongr and positivity, and then we'll need a new name for it.
Notification Bot (Sep 20 2025 at 13:07):
7 messages were moved here from #PR reviews > #29364 `field_simp` for inequalities by Heather Macbeth.
Lawrence Wu (llllvvuu) (Sep 20 2025 at 14:55):
sign? would also solve the name length issue
Michael Rothgang (Sep 20 2025 at 14:56):
From a user's POV, I'd rather have user-facing tactics positivity and negativity. Internally, these might be implemented as some kind of sign tactic.
Jovan Gerbscheid (Sep 20 2025 at 16:12):
Would you still want to call it negativity if the goal was -bla < 0, where bla is some complicated expression which is positive by the positivity tactic?
Michael Rothgang (Sep 20 2025 at 16:33):
Yes - the goal is to prove something is negative after all. (And indeed, in the example you give, negativity should probably do something equivalent to positivity on bla.)
Last updated: Dec 20 2025 at 21:32 UTC