Skip to content

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)FindStatSt001584via DyckPath✓
AreaAboveBouncePath(path)The boxes between the path and its bounce path: the area less the area of the bounce path.
Typed signatures
TypePackageApplies
(dyck_path) -> numbercombinatoricsalways

Domain: Dyck path statistics

Details
  • Defined over DyckPath as an expression in _x, evaluated by compute-engine — the definition IS the implementation.
  • Takes a DyckPath and 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

Basic #

the step word UUDDUDUUDDUD

live ↗
InAreaAboveBouncePath(DyckPath⁡([1,1,0,0,1,0]))\mathrm{AreaAboveBouncePath}({\operatorname{DyckPath}}([1, 1, 0, 0, 1, 0]))Out00

the step word UDUUDDUDUUDD

live ↗
InAreaAboveBouncePath(DyckPath⁡([1,0,1,1,0,0]))\mathrm{AreaAboveBouncePath}({\operatorname{DyckPath}}([1, 0, 1, 1, 0, 0]))Out00
Properties #

FindStat's value for [1,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,0]),AreaAboveBouncePath)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 0]), \text{AreaAboveBouncePath})Out00

Known value · FindStat St001584

FindStat's value for [1,0,1,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,0,1,0]),AreaAboveBouncePath)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 0, 1, 0]), \text{AreaAboveBouncePath})Out00

Known value · FindStat St001584

FindStat's value for [1,1,0,0]

live ↗
InCombinatorialStat(DyckPath⁡([1,1,0,0]),AreaAboveBouncePath)\mathrm{CombinatorialStat}({\operatorname{DyckPath}}([1, 1, 0, 0]), \text{AreaAboveBouncePath})Out00

Known value · FindStat St001584

About
Examples5
CrosswalkFindStat