Maximal length of chains #
This file contains lemmas to work with the maximal length of strictly descending finite sequences (chains) in a partial order.
Main definition #
Set.subchain: The set of strictly ascending lists ofαcontained in aSet α.Set.chainHeight: The maximal length of a strictly ascending sequence in a partial order. This is defined as the maximum of the lengths ofSet.subchains, valued inℕ∞.
Main results #
Set.exists_chain_of_le_chainHeight: For eachn : ℕsuch thatn ≤ s.chainHeight, there existss.subchainof lengthn.Set.chainHeight_mono: Ifs ⊆ tthens.chainHeight ≤ t.chainHeight.Set.chainHeight_image: Iffis an order embedding, then(f '' s).chainHeight = s.chainHeight.Set.chainHeight_insert_of_forall_lt: If∀ y ∈ s, y < x, then(insert x s).chainHeight = s.chainHeight + 1.Set.chainHeight_insert_of_forall_gt: If∀ y ∈ s, x < y, then(insert x s).chainHeight = s.chainHeight + 1.Set.chainHeight_union_eq: If∀ x ∈ s, ∀ y ∈ t, s ≤ t, then(s ∪ t).chainHeight = s.chainHeight + t.chainHeight.Set.wellFoundedGT_of_chainHeight_ne_top: Ifshas finite height, then>is well-founded ons.Set.wellFoundedLT_of_chainHeight_ne_top: Ifshas finite height, then<is well-founded ons.
The maximal length of a strictly ascending sequence in a partial order.
Equations
- s.chainHeight = ⨆ l ∈ s.subchain, ↑l.length
Instances For
@[simp]
@[simp]
@[simp]
@[simp]
theorem
Set.chainHeight_insert_of_forall_gt
{α : Type u_1}
{s : Set α}
[Preorder α]
(a : α)
(hx : ∀ b ∈ s, a < b)
:
theorem
Set.chainHeight_insert_of_forall_lt
{α : Type u_1}
{s : Set α}
[Preorder α]
(a : α)
(ha : ∀ b ∈ s, b < a)
:
theorem
Set.chainHeight_union_eq
{α : Type u_1}
[Preorder α]
(s t : Set α)
(H : ∀ a ∈ s, ∀ b ∈ t, a < b)
:
theorem
Set.wellFoundedGT_of_chainHeight_ne_top
{α : Type u_1}
[Preorder α]
(s : Set α)
(hs : s.chainHeight ≠ ⊤)
:
theorem
Set.wellFoundedLT_of_chainHeight_ne_top
{α : Type u_1}
[Preorder α]
(s : Set α)
(hs : s.chainHeight ≠ ⊤)
: