Zulip Chat Archive

Stream: mathlib4

Topic: SemilatticeInf as a hypothesis


Wrenna Robson (Jul 14 2025 at 12:13):

Suppose you have a type with an existing LE on it - Subtype p when there's an ambient relation is a good example - and you want to assert as a hypothesis "SemilatticeInf (Subtype p)" - but you want the LE for that to be the one that already exists, to avoid diamond issues. How do you specify that?

Wrenna Robson (Jul 14 2025 at 12:13):

I guess in general my question is like, why do the classes for orders mix data and propositions in this way.

Aaron Liu (Jul 14 2025 at 12:24):

Just don't

Aaron Liu (Jul 14 2025 at 12:25):

How about ∀ a b, ∃ c, IsGLB {a, b} c

Wrenna Robson (Jul 14 2025 at 12:25):

Oh, sure, if that's a preferred spelling

Aaron Liu (Jul 14 2025 at 12:26):

I haven't seen it used anywhere

Wrenna Robson (Jul 14 2025 at 12:26):

I guess what I don't quite get, design-wise, is why OrderBot instead has [LE _] as a required instance

Aaron Liu (Jul 14 2025 at 12:26):

but it seems better than putting an unrelated SemilatticeInf on you type and then asserting a compatibility

Wrenna Robson (Jul 14 2025 at 12:27):

While SemilatticeInf doesn't do that.

Wrenna Robson (Jul 14 2025 at 12:27):

It seems inconsistent to me but I feel like it's more likely I'm missing something subtlety.

Wrenna Robson (Jul 14 2025 at 12:31):

@Yaël Dillies I assume you'll know why it's designed like this.

Yaël Dillies (Jul 14 2025 at 12:33):

Wrenna Robson said:

How do you specify that?

You use SubsemilatticeSup, the missing SemilatticeSup counterpart to docs#Sublattice

Wrenna Robson (Jul 14 2025 at 12:34):

Ah.


Last updated: Dec 20 2025 at 21:32 UTC