AreaAboveBouncePath
The boxes between the path and its bounce path: the area less the area of the bounce path.
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St001584via DyckPath✓AreaAboveBouncePath(path)The boxes between the path and its bounce path: the area less the area of the bounce path.Typed signatures
| Type | Package | Applies |
|---|---|---|
(dyck_path) -> number | combinatorics | always |
Details
- Defined over
DyckPathas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
DyckPathand 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. - The bounce path is U^b1 D^b1 U^b2 D^b2 ... for the climbs b of the bounce walk, so its area is the sum of binomial(b, 2).
Definition
Epsil, as the implementation runs it.
on DyckPath, over _x
0 if Length(_x) < 2 else (0 if Length(_x) < 1 else (Sum(Map(
Function(Sum(Map(
Function(2 * _x[k] -
1, k),
Range(1, i),
)), i),
Range(
1,
Length(_x),
),
)) - Length(_x) / 2) /
2) - Apply(
(ceilings: list<integer>) => Fold(
Function([a[1], a[2], a[3]] if a[1] ==
Length(_x) / 2 else [
ceilings[a[1] + 1],
a[2] + 1,
a[3] +
(ceilings[a[1] + 1] -
a[1]) *
(ceilings[a[1] + 1] -
a[1] -
1) /
2,
], a, b),
[0, 0, 0],
Range(1, Length(_x) / 2),
)[3],
Apply(
(ups: list<integer>) => Map(Function(Sum(Map(
Function(2 * _x[k] -
1, k),
Range(1, ups[Length(_x) / 2 +
1 -
j]),
)) +
(j - 1), j), Range(1, Length(_x) / 2)),
Filter(
Range(1, Length(_x)),
Function(_x[i] == 1, i),
),
),
)Examples
Properties #
About
| Examples | 5 |
|---|---|
| Crosswalk | FindStat |