DyckPathsAboveBouncePathCount
Dyck paths of semilength n that stay weakly above the bounce path of the composition: their area sequences are at least 0 .. c_1 - 1, 0 .. c_2 - 1, ....
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St001312via IntegerComposition✓DyckPathsAboveBouncePathCount(composition)Dyck paths of semilength n that stay weakly above the bounce path of the composition: their area sequences are at least 0 .. c_1 - 1, 0 .. c_2 - 1, ....Typed signatures
| Type | Package | Applies |
|---|---|---|
(composition) -> number | combinatorics | always |
Details
- Defined over
IntegerCompositionas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
IntegerCompositionand nothing else — it reads values against their positions, or walks the orbits, so it needs the bijection. Applying it to a bare list is a type error, not a wrong answer. - FindStat titles it the parabolic noncrossing partitions indexed by the composition (Mühle and Williams) and also the size of a nu-Tamari lattice (Bergeron, Ceballos and Pilaud); its code counts these Dyck paths.
Definition
Epsil, as the implementation runs it.
on IntegerComposition, over _x
1 if Length(_x) < 1 else Apply((cuts: list<integer>) => Apply(
(bounceAreas: list<integer>) => 1 if Sum(_x) < 2 else Max(Sum(Fold(
Function(Map(Function(Sum(Map(
Function(a[g], g),
Range(Max(h - 1, 1), Sum(_x), 1),
)) if h - 1 >=
bounceAreas[b] else 0, h), Range(1, Sum(_x))), a, b),
Map(Function(1 if h == 1 else 0, h), Range(1, Sum(_x))),
Range(2, Sum(_x), 1),
)), 0),
Map(
Function(i -
1 -
Max(Filter(
cuts,
Function(u < i, u),
)), i),
Range(
1,
Sum(_x),
),
),
), Fold(Function(
Join(a, [Last(a) + b]),
a,
b,
), [0], _x))Examples
Properties #
About
| Examples | 4 |
|---|---|
| Crosswalk | FindStat |