Skip to content

ParallelogramPolyominoArea ​

The cells of the parallelogram polyomino the path corresponds to under the Delest-Viennot bijection.

✓ checked against that system · ! checked, with disagreements (hover a chip)FindStatSt001034via DyckPath✓
ParallelogramPolyominoArea(path)The cells of the parallelogram polyomino the path corresponds to under the Delest-Viennot bijection.
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.

Definition

Epsil, as the implementation runs it.

on DyckPath, over _x

0 if Length(_x) < 1 else Apply(
                                (north: list<integer>) => Apply(
                                                                 (east: list<integer>) => Apply(
                                                                                                 (northEasts: list<integer>) => Apply(
                                                                                                                                       (eastEasts: list<integer>) => Apply(
                                                                                                                                                                            (columns: list<integer>) => Sum(columns),
                                                                                                                                                                            Map(Function(northEasts[j] - eastEasts[j], j), Range(1, Length(northEasts))),
                                                                                                                                                                          ),
                                                                                                                                       Filter(Range(1, Length(_x) / 2 +
                                                                                                                                                       1), Function(east[i] == 0, i)),
                                                                                                                                     ),
                                                                                                 Filter(
                                                                                                         Range(1, Length(_x) / 2 +
                                                                                                                  1),
                                                                                                         Function(north[i] == 0, i),
                                                                                                       ),
                                                                                               ),
                                                                 Join(
                                                                       [0],
                                                                       Map(
                                                                            Function(1 - _x[2i], i),
                                                                            Range(1, Length(_x) / 2),
                                                                          ),
                                                                     ),
                                                               ),
                                Join(Map(
                                          Function(_x[2i - 1], i),
                                          Range(1, Length(_x) / 2),
                                        ), [0]),
                              )

Examples

Basic #

the step word UUDDUDUUDDUD

live ↗
InParallelogramPolyominoArea(DyckPath⁡([1,1,0,0,1,0]))\mathrm{ParallelogramPolyominoArea}({\operatorname{DyckPath}}([1, 1, 0, 0, 1, 0]))Out33

the step word UDUUDDUDUUDD

live ↗
InParallelogramPolyominoArea(DyckPath⁡([1,0,1,1,0,0]))\mathrm{ParallelogramPolyominoArea}({\operatorname{DyckPath}}([1, 0, 1, 1, 0, 0]))Out33
Properties #

FindStat's value for [1,0]

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

Known value · FindStat St001034

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

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

Known value · FindStat St001034

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

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

Known value · FindStat St001034

About
Examples5
CrosswalkFindStat