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: Dec 20 2023 at 11:08 UTC