Lexicographic order #
This file defines the lexicographic relation for pairs of orders, partial orders and linear orders.
Main declarations #
Prod.Lex.<pre/partial/linear>Order
: Instances lifting the orders onα
andβ
toα ×ₗ β
.
Notation #
α ×ₗ β
:α × β
equipped with the lexicographic order
See also #
Related files are:
A type synonym to equip a type with its lexicographic order.
Equations
- Prod.Lex.«term_×ₗ_» = Lean.ParserDescr.trailingNode `Prod.Lex.«term_×ₗ_» 35 0 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " ×ₗ ") (Lean.ParserDescr.cat `term 34))
Instances For
instance
Prod.Lex.instWellFoundedLTLex
{α : Type u_1}
{β : Type u_2}
[LT α]
[LT β]
[WellFoundedLT α]
[WellFoundedLT β]
:
WellFoundedLT (Lex (α × β))
instance
Prod.Lex.instWellFoundedRelationLexOfWellFoundedLT
{α : Type u_1}
{β : Type u_2}
[LT α]
[LT β]
[WellFoundedLT α]
[WellFoundedLT β]
:
WellFoundedRelation (Lex (α × β))
Dictionary / lexicographic preorder for pairs.
Equations
- Prod.Lex.preorder α β = Preorder.mk ⋯ ⋯ ⋯
theorem
Prod.Lex.toLex_mono
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[Preorder β]
:
Monotone ⇑toLex
theorem
Prod.Lex.toLex_strictMono
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[Preorder β]
:
StrictMono ⇑toLex
instance
Prod.Lex.partialOrder
(α : Type u_3)
(β : Type u_4)
[PartialOrder α]
[PartialOrder β]
:
PartialOrder (Lex (α × β))
Dictionary / lexicographic partial order for pairs.
Equations
instance
Prod.Lex.instOrientedOrdLex
{α : Type u_1}
{β : Type u_2}
[Ord α]
[Ord β]
[Batteries.OrientedOrd α]
[Batteries.OrientedOrd β]
:
Batteries.OrientedOrd (Lex (α × β))
instance
Prod.Lex.instTransOrdLex
{α : Type u_1}
{β : Type u_2}
[Ord α]
[Ord β]
[Batteries.TransOrd α]
[Batteries.TransOrd β]
:
Batteries.TransOrd (Lex (α × β))
instance
Prod.Lex.linearOrder
(α : Type u_3)
(β : Type u_4)
[LinearOrder α]
[LinearOrder β]
:
LinearOrder (Lex (α × β))
Dictionary / lexicographic linear order for pairs.
Equations
- One or more equations did not get rendered due to their size.
instance
Prod.Lex.orderBot
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[Preorder β]
[OrderBot α]
[OrderBot β]
:
Equations
- Prod.Lex.orderBot = OrderBot.mk ⋯
instance
Prod.Lex.orderTop
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[Preorder β]
[OrderTop α]
[OrderTop β]
:
Equations
- Prod.Lex.orderTop = OrderTop.mk ⋯
instance
Prod.Lex.boundedOrder
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[Preorder β]
[BoundedOrder α]
[BoundedOrder β]
:
BoundedOrder (Lex (α × β))
Equations
- Prod.Lex.boundedOrder = BoundedOrder.mk
instance
Prod.Lex.instDenselyOrderedLex
{α : Type u_1}
{β : Type u_2}
[Preorder α]
[Preorder β]
[DenselyOrdered α]
[DenselyOrdered β]
:
DenselyOrdered (Lex (α × β))
instance
Prod.Lex.noMaxOrder_of_left
{α : Type u_1}
{β : Type u_2}
[Preorder α]
[Preorder β]
[NoMaxOrder α]
:
NoMaxOrder (Lex (α × β))
instance
Prod.Lex.noMinOrder_of_left
{α : Type u_1}
{β : Type u_2}
[Preorder α]
[Preorder β]
[NoMinOrder α]
:
NoMinOrder (Lex (α × β))
instance
Prod.Lex.noMaxOrder_of_right
{α : Type u_1}
{β : Type u_2}
[Preorder α]
[Preorder β]
[NoMaxOrder β]
:
NoMaxOrder (Lex (α × β))
instance
Prod.Lex.noMinOrder_of_right
{α : Type u_1}
{β : Type u_2}
[Preorder α]
[Preorder β]
[NoMinOrder β]
:
NoMinOrder (Lex (α × β))