Module docstring
{"# Notation classes for lattice operations
In this file we introduce typeclasses and definitions for lattice operations.
Main definitions
HasCompl: type class for theᶜnotationTop: type class for the⊤notationBot: type class for the⊥notation
Notations
xᶜ: complement in a lattice;x ⊔ y: supremum/join, which is notation formax x y;x ⊓ y: infimum/meet, which is notation formin x y;
We implement a delaborator that pretty prints max x y/min x y as x ⊔ y/x ⊓ y
if and only if the order on α does not have a LinearOrder α instance (where x y : α).
This is so that in a lattice we can use the same underlying constants max/min
as in linear orders, while using the more idiomatic notation x ⊔ y/x ⊓ y.
Lemmas about the operators ⊔ and ⊓ should use the names sup and inf respectively.
","### Sup and Inf "}