Zulip Chat Archive
Stream: general
Topic: bot_le v zero_le
Kevin Buzzard (Mar 20 2022 at 00:24):
import tactic
#check @bot_le -- ∀ {a : α}, ⊥ ≤ a
#check @zero_le -- ∀ (a : α), 0 ≤ a
Why the difference in binders? I omitted the typeclasses; for bot_le it's [has_le α] [order_bot α] and for zero_le it's [canonically_ordered_add_monoid α]
Eric Wieser (Mar 20 2022 at 09:16):
I think the style guides are ambiguous with how to deal with ≤
Eric Wieser (Mar 20 2022 at 09:17):
On the one hand, the argument could be explicit because ≤ is like =
Eric Wieser (Mar 20 2022 at 09:18):
On the other, A ≤ B is often defeq to x ∈ A → x ∈ B, where x, A, and maybe B would then usually be made explicit
Yaël Dillies (Mar 20 2022 at 09:56):
I would make it explicit. ≤ is rarely defeq to x ∈ A → x ∈ B, especially when dealing with a 0 in the order and even ⊆ lemmas often have (over)explicit arguments.
Kevin Buzzard (Mar 20 2022 at 11:05):
In my experience <= is often defeq to the implication because I'm usually dealing with submodules, ideals, subspaces etc rather than these order types
Damiano Testa (Mar 20 2022 at 12:24):
I often found that I wished an argument was explicit, rather than being annoyed by it being not implicit. Hence, my preference would be to make them explicit!
Adam Topaz (Mar 20 2022 at 14:35):
+1 from me for making it explicit.
Adam Topaz (Mar 20 2022 at 14:36):
Same goes for docs#inf_le_left and its friends
Yaël Dillies (Mar 20 2022 at 14:47):
For the record, I just wrote @inf_comm _ _ a :grinning:
Last updated: May 02 2025 at 03:31 UTC