maximal and minimal elements
theorem
exists_lt_of_not_maximal
{α : Type u_1}
[PartialOrder α]
{a : α}
(h : ¬Maximal a)
:
∃ (b : α), a < b
theorem
exists_le_of_not_maximal
{α : Type u_1}
[PartialOrder α]
{a : α}
(h : ¬Maximal a)
:
∃ (b : α), a ≤ b
theorem
preimage_maximal_strictMono
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(mono : StrictMonotone f)
(h : Maximal (f a))
:
Maximal a
theorem
preimage_minimal_strictMono
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(mono : StrictMonotone f)
(h : Minimal (f a))
:
Minimal a
theorem
preimage_maximal_strictAnti
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(mono : StrictAntitone f)
(h : Maximal (f a))
:
Minimal a
theorem
preimage_minimal_strictAnti
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(mono : StrictAntitone f)
(h : Minimal (f a))
:
Maximal a
theorem
Maximal.subtype
{α : Type u_1}
[PartialOrder α]
{p : α → Prop}
{a : { a : α // p a }}
(h : Maximal a.val)
:
Maximal a
theorem
Minimal.subtype
{α : Type u_1}
[PartialOrder α]
{p : α → Prop}
{a : { a : α // p a }}
(h : Minimal a.val)
:
Minimal a
Greatest and least elements
theorem
Greatest.all_eq
{α : Type u_1}
[PartialOrder α]
{a a' : α}
(h : Greatest a)
(h' : Greatest a')
:
a = a'
theorem
Least.all_eq
{α : Type u_1}
[PartialOrder α]
{a a' : α}
(h : Least a)
(h' : Least a')
:
a = a'
instance
instSubsingletonSubtypeGreatest
{α : Type u_1}
[PartialOrder α]
:
Subsingleton { a : α // Greatest a }
Equations
- ⋯ = ⋯
instance
instSubsingletonSubtypeLeast
{α : Type u_1}
[PartialOrder α]
:
Subsingleton { a : α // Least a }
Equations
- ⋯ = ⋯
theorem
Greatest.maximal_eq
{α : Type u_1}
[PartialOrder α]
{a a' : α}
(h : Greatest a)
(h' : Maximal a')
:
a = a'
theorem
Least.minimal_eq
{α : Type u_1}
[PartialOrder α]
{a a' : α}
(h : Least a)
(h' : Minimal a')
:
a = a'
Equations
- h.unique_maximal = { default := ⟨a, ⋯⟩, uniq := ⋯ }
Instances For
Equations
- h.unique_minimal = { default := ⟨a, ⋯⟩, uniq := ⋯ }
Instances For
theorem
Monotone.greatest_surj
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(h : Monotone f)
(h1 : Function.Surjective f)
(h2 : Greatest a)
:
Greatest (f a)
theorem
Monotone.least_surj
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(h : Monotone f)
(h1 : Function.Surjective f)
(h2 : Least a)
:
Least (f a)
theorem
Antitone.greatest_surj
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(h : Antitone f)
(h1 : Function.Surjective f)
(h2 : Least a)
:
Greatest (f a)
theorem
Antitone.least_surj
{α : Type u_1}
{β : Type u_2}
[PartialOrder α]
[PartialOrder β]
{a : α}
{f : α → β}
(h : Antitone f)
(h1 : Function.Surjective f)
(h2 : Greatest a)
:
Least (f a)
on partial maps
theorem
PartialMap.maximal_iff
{α : Type u_1}
{β : α → Type u_2}
[∀ (a : α), Nonempty (β a)]
{x : PartialMap α β}
:
Equations
- AdjoinGreatest α = (α ⊕ Unit)
Instances For
Equations
- AdjoinGreatest.to = Sum.inl
Instances For
Instances For
Equations
- One or more equations did not get rendered due to their size.
@[simp]
theorem
AdjoinGreatest.le_greatest
{α : Type u_1}
[LE α]
{x : AdjoinGreatest α}
:
x ≤ AdjoinGreatest.greatest
@[simp]
theorem
AdjoinGreatest.to_le_to_iff
{α : Type u_1}
[LE α]
{a b : α}
:
AdjoinGreatest.to a ≤ AdjoinGreatest.to b ↔ a ≤ b
Equations
- instPreorderAdjoinGreatest = Preorder.mk ⋯ ⋯ ⋯
Equations
- instPartialOrderAdjoinGreatest = PartialOrder.mk ⋯
@[simp]
theorem
AdjoinGreatest.greatest_is_greatest
{α : Type u_1}
[Preorder α]
:
Greatest AdjoinGreatest.greatest
Equations
- AdjoinLeast α = Op (AdjoinGreatest (Op α))
Instances For
Equations
- AdjoinLeast.to = Sum.inl
Instances For
Instances For
@[simp]
@[simp]
theorem
AdjoinLeast.to_le_to_iff
{α : Type u_1}
[LE α]
{a b : α}
:
AdjoinLeast.to a ≤ AdjoinLeast.to b ↔ a ≤ b
@[simp]
The top (⊤
, \top
) element
Equations
- «term⊤» = Lean.ParserDescr.node `«term⊤» 1024 (Lean.ParserDescr.symbol "⊤")
Instances For
The bot (⊥
, \bot
) element
Equations
- «term⊥» = Lean.ParserDescr.node `«term⊥» 1024 (Lean.ParserDescr.symbol "⊥")
Instances For
@[instance 100]
Equations
- ⋯ = ⋯
@[simp]
@[simp]
@[simp]
@[simp]
@[simp]
theorem
IsOrderIso.greatest
{α : Type u_1}
{β : Type u_3}
[PartialOrder α]
[PartialOrder β]
[HasGreatest α]
[HasGreatest β]
{f : α → β}
(h : IsOrderIso f)
:
@[simp]
theorem
IsOrderIso.least
{α : Type u_1}
{β : Type u_3}
[PartialOrder α]
[PartialOrder β]
[HasLeast α]
[HasLeast β]
{f : α → β}
(h : IsOrderIso f)
:
Equations
- instHasLeastAdjoinLeast = { least := AdjoinLeast.least, least_le := ⋯ }
Equations
- instHasGreatestAdjoinGreatest = { greatest := AdjoinGreatest.greatest, le_greatest := ⋯ }