Type synonyms #
This file provides two type synonyms for order theory:
OrderDual α
: Type synonym ofα
to equip it with the dual order (a ≤ b
becomesb ≤ a
).Lex α
: Type synonym ofα
to equip it with its lexicographic order. The precise meaning depends on the type we take the lex of. Examples includeProd
,Sigma
,List
,Finset
.
Notation #
αᵒᵈ
is notation for OrderDual α
.
The general rule for notation of Lex
types is to append ₗ
to the usual notation.
Implementation notes #
One should not abuse definitional equality between α
and αᵒᵈ
/Lex α
. Instead, explicit
coercions should be inserted:
OrderDual
:OrderDual.toDual : α → αᵒᵈ
andOrderDual.ofDual : αᵒᵈ → α
Lex
:toLex : α → Lex α
andofLex : Lex α → α
.
See also #
This file is similar to Algebra.Group.TypeTags
.
Order dual #
Alias of the reverse direction of OrderDual.toDual_le_toDual
.
Alias of the reverse direction of OrderDual.toDual_lt_toDual
.
Alias of the reverse direction of OrderDual.ofDual_le_ofDual
.
Alias of the reverse direction of OrderDual.ofDual_lt_ofDual
.
Lexicographic order #
Equations
- instBEqLex α = { beq := fun (a b : Lex α) => ofLex a == ofLex b }