Noncrossing partitions and the refinement order
AbbreviationSet partition#✓fully proved
A set partition of \(\{0, \dots, n-1\}\) is a finite collection of nonempty, pairwise disjoint subsets of \(\{0, \dots, n-1\}\), called blocks, whose union is \(\{0, \dots, n-1\}\).
abbrev SetPartition (n : ℕ) :=
Finpartition (Finset.univ : Finset (Fin n))
Used by 48
DefinitionCrossing in a set partition#✓fully proved
A set partition \(P\) of \(\{0, \dots, n-1\}\) has a crossing if there are \(a < b < c < d\) in \(\{0, \dots, n-1\}\) such that \(a\) and \(c\) lie in the same block of \(P\), \(b\) and \(d\) lie in the same block of \(P\), and these two blocks are different.
def HasCrossing {n : ℕ} (P : SetPartition n) : Prop :=
∃ a b c d : Fin n,
a < b ∧ b < c ∧ c < d ∧
P.part a = P.part c ∧ P.part b = P.part d ∧ P.part a ≠ P.part b
abbrev SetPartition (n : ℕ) :=
Finpartition (Finset.univ : Finset (Fin n))
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:34
Uses 1 · Used by 17
DefinitionNoncrossing set partition#✓fully proved
A set partition of \(\{0, \dots, n-1\}\) is noncrossing if it has no crossing.
def IsNoncrossing {n : ℕ} (P : SetPartition n) : Prop :=
¬ HasCrossing P
abbrev SetPartition (n : ℕ) :=
Finpartition (Finset.univ : Finset (Fin n))
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:34
def HasCrossing {n : ℕ} (P : SetPartition n) : Prop :=
∃ a b c d : Fin n,
a < b ∧ b < c ∧ c < d ∧
P.part a = P.part c ∧ P.part b = P.part d ∧ P.part a ≠ P.part b
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:39
Uses 2 · Used by 41
DefinitionNoncrossing partition#✓fully proved
A noncrossing partition of \(\{0, \dots, n-1\}\) is a set partition of \(\{0, \dots, n-1\}\) that is noncrossing.
def NoncrossingPartition (n : ℕ) :=
{ P : NoncrossingPartition.SetPartition n // NoncrossingPartition.IsNoncrossing P }
abbrev SetPartition (n : ℕ) :=
Finpartition (Finset.univ : Finset (Fin n))
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:34
def IsNoncrossing {n : ℕ} (P : SetPartition n) : Prop :=
¬ HasCrossing P
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:45
Uses 2 · Used by 37
DefinitionBlock of a noncrossing partition#✓fully proved
For a noncrossing partition \(P\) of \(\{0, \dots, n-1\}\) and a point \(a \in \{0, \dots, n-1\}\), the block of \(P\) at \(a\) is the block of the underlying set partition that contains \(a\).
def block {n : ℕ} (P : _root_.NoncrossingPartition n) (a : Fin n) : Finset (Fin n) :=
P.val.part a
def NoncrossingPartition (n : ℕ) :=
{ P : NoncrossingPartition.SetPartition n // NoncrossingPartition.IsNoncrossing P }
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:59
Uses 3 · Used by 4
TheoremPartitions of at most three points are noncrossing#✓fully proved
For every \(n \le 3\), every set partition of \(\{0, \dots, n-1\}\) is noncrossing.
theorem isNoncrossing_of_le_three {n : ℕ} (hn : n ≤ 3) (P : SetPartition n) :
IsNoncrossing P
abbrev SetPartition (n : ℕ) :=
Finpartition (Finset.univ : Finset (Fin n))
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:34
def IsNoncrossing {n : ℕ} (P : SetPartition n) : Prop :=
¬ HasCrossing P
MathlibExt/Combinatorics/NoncrossingPartition/Basic.lean:45
Uses 3 · Used by 1
Loading dependency explorer…
The dependency explorer needs JavaScript and its graph data.