SecondAlladiWeight
Half the last part (rounded up if odd), times the product over consecutive parts of half the gap less 1 for each even one of the two.
✓ checked against that system · ! checked, with disagreements (hover a chip)FindStat
St000478via IntegerPartition✓SecondAlladiWeight(partition)Half the last part (rounded up if odd), times the product over consecutive parts of half the gap less 1 for each even one of the two.Typed signatures
| Type | Package | Applies |
|---|---|---|
(integer_partition) -> number | combinatorics | always |
Details
- Defined over
IntegerPartitionas an expression in_x, evaluated by compute-engine — the definition IS the implementation. - Takes a
IntegerPartitionand 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. - Alladi's second weight: for each part, delta is 1 if it is even and 0 if odd; the factor for the last part is (last + 1 - delta)/2 and for each consecutive pair (gap - delta - delta')/2.
Definition
Epsil, as the implementation runs it.
on IntegerPartition, over _x
0 if Length(_x) < 1 else (_x[Length(_x)] + 1 -
(1 if _x[Length(_x)] % 2 == 0 else 0)) / 2 if Length(_x) == 1 else 0 if Count(Filter(
Range(1, Length(_x) - 1),
Function(_x[i] -
_x[i + 1] -
(1 if _x[i] % 2 ==
0 else 0) -
(1 if _x[i + 1] %
2 ==
0 else 0) ==
0, i),
)) > 0 else (_x[Length(_x)] + 1 -
(1 if _x[Length(_x)] % 2 ==
0 else 0)) /
2 *
Product(Map(
Function((_x[i] -
_x[i + 1] -
(1 if _x[i] % 2 ==
0 else 0) -
(1 if _x[i + 1] %
2 ==
0 else 0)) /
2, i),
Range(1, Length(_x) - 1),
))Examples
Properties #
About
| Examples | 5 |
|---|---|
| Crosswalk | FindStat |