Documentation

Mathlib.Order.Height

Maximal length of chains #

This file contains lemmas to work with the maximal lengths of chains of arbitrary relations. See Order.height for a definition specialized to finding the height of an element in a preorder.

Main definition #

Main results #

noncomputable def Set.chainHeight {α : Type u_1} (s : Set α) (r : ααProp) :

The maximal length of a chain in a set s with relation r.

Equations
Instances For
    theorem Set.chainHeight_eq_iSup {α : Type u_1} (s : Set α) (r : ααProp) :
    s.chainHeight r = ⨆ (t : { t : Set α // t s IsChain r t }), (↑t).encard
    theorem Set.chainHeight_le_encard {α : Type u_1} (s : Set α) (r : ααProp) :
    theorem Set.chainHeight_ne_top_of_finite {α : Type u_1} (s : Set α) (r : ααProp) (h : s.Finite) :
    theorem Set.exists_isChain_of_le_chainHeight {α : Type u_1} {r : ααProp} {s : Set α} (n : ) (h : n s.chainHeight r) :
    ts, t.encard = n IsChain r t
    theorem Set.exists_eq_chainHeight_of_chainHeight_ne_top {α : Type u_1} (s : Set α) (r : ααProp) (h : s.chainHeight r ) :
    ts, t.encard = s.chainHeight r IsChain r t
    theorem Set.exists_eq_chainHeight_of_finite {α : Type u_1} (s : Set α) (r : ααProp) (h : s.Finite) :
    ts, t.encard = s.chainHeight r IsChain r t
    theorem Set.encard_le_chainHeight_of_isChain {α : Type u_1} {r : ααProp} (s t : Set α) (hs : t s) (hc : IsChain r t) :
    theorem Set.encard_eq_chainHeight_of_isChain {α : Type u_1} {r : ααProp} (s : Set α) (hc : IsChain r s) :
    theorem Set.finite_of_chainHeight_ne_top {α : Type u_1} {r : ααProp} {s : Set α} (hc : IsChain r s) (h : s.chainHeight r ) :
    theorem Set.not_isChain_of_chainHeight_lt_encard {α : Type u_1} (r : ααProp) (s t : Set α) (ht : t s) (he : s.chainHeight r < t.encard) :
    theorem Set.chainHeight_eq_top_iff {α : Type u_1} (s : Set α) (r : ααProp) :
    s.chainHeight r = ∀ (n : ), ts, t.encard = n IsChain r t
    @[simp]
    theorem Set.chainHeight_eq_zero_iff {α : Type u_1} (s : Set α) (r : ααProp) :
    @[simp]
    theorem Set.chainHeight_empty {α : Type u_1} (r : ααProp) :
    @[simp]
    theorem Set.one_le_chainHeight_iff {α : Type u_1} (s : Set α) (r : ααProp) :
    @[simp]
    theorem Set.chainHeight_of_isEmpty {α : Type u_1} (s : Set α) (r : ααProp) [IsEmpty α] :
    theorem Set.chainHeight_mono {α : Type u_1} (r : ααProp) (s t : Set α) (h : s t) :
    @[simp]
    theorem Set.chainHeight_flip {α : Type u_1} (s : Set α) (r : ααProp) :
    theorem Set.chainHeight_eq_of_relEmbedding {α : Type u_1} {β : Type u_2} {r : ααProp} {r' : ββProp} (s : Set α) (e : r ↪r r') :
    (e '' s).chainHeight r' = s.chainHeight r
    theorem Set.chainHeight_eq_of_relIso {α : Type u_1} {β : Type u_2} {r : ααProp} {r' : ββProp} (s : Set α) (e : r ≃r r') :
    (e '' s).chainHeight r' = s.chainHeight r
    @[simp]
    theorem Set.chainHeight_coe_univ {α : Type u_1} (s : Set α) (r : ααProp) :
    (univ.chainHeight fun (x1 x2 : s) => r x1 x2) = s.chainHeight r
    @[simp]
    theorem Set.chainHeight_coe_univ_le {α : Type u_1} (s : Set α) [LE α] :
    (univ.chainHeight fun (x1 x2 : s) => x1 x2) = s.chainHeight fun (x1 x2 : α) => x1 x2
    @[simp]
    theorem Set.chainHeight_coe_univ_lt {α : Type u_1} (s : Set α) [LT α] :
    (univ.chainHeight fun (x1 x2 : s) => x1 < x2) = s.chainHeight fun (x1 x2 : α) => x1 < x2