Skip to content

DistinctParts ​

How many distinct part sizes occur.

✓ checked against that system · ! checked, with disagreements (hover a chip)WikipediaInteger partitionMathWorldPartitionWikidataQ1082910Britannicatopic/partition-of-an-integerOEISA000009FindStatSt000903via IntegerComposition✓St000159via IntegerPartition✓St001453via PlanePartition✓
DistinctParts(partition)How many distinct part sizes occur.
Typed signatures
TypePackageApplies
(composition | integer_partition | plane_partition) -> numbercombinatoricsalways

Domain: Partition statistics

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

0 if Length(_x) < 1 else Count(Filter(
                                       Range(1, Max(_x)),
                                       Function(Count(Filter(
                                                              Range(
                                                                     1,
                                                                     Length(_x),
                                                                   ),
                                                              Function(_x[i] ==
                                                                       j, i),
                                                            )) > 0, j),
                                     ))

on IntegerComposition, over _x

Length(Unique(_x))

on PlanePartition, over _x

0 if Length(Flatten(_x)) < 1 else Apply((reading: list<integer>) => Apply(
                                                                           (lengths: list<integer>) => Max(Sum(Map(Function(1 if Max(Sum(Map(Function(1 if e == k else 0, e), reading)), 0) >
                                                                                                                                 0 else 0, k), Range(1, Max(reading), 1))), 0),
                                                                           Map(
                                                                                Function(Length(r), r),
                                                                                _x,
                                                                              ),
                                                                         ), Flatten(_x))

Examples

Basic #

the partition 4+2+14 + 2 + 1 of 77

live ↗
InDistinctParts(IntegerPartition⁡([4,2,1]))\mathrm{DistinctParts}({\operatorname{IntegerPartition}}([4, 2, 1]))Out33

the partition 3+3+13 + 3 + 1 of 77

live ↗
InDistinctParts(IntegerPartition⁡([3,3,1]))\mathrm{DistinctParts}({\operatorname{IntegerPartition}}([3, 3, 1]))Out22
Properties #

FindStat's value for [1]

live ↗
InCombinatorialStat(IntegerPartition⁡([1]),DistinctParts)\mathrm{CombinatorialStat}({\operatorname{IntegerPartition}}([1]), \text{DistinctParts})Out11

Known value · FindStat St000159

FindStat's value for [2]

live ↗
InCombinatorialStat(IntegerPartition⁡([2]),DistinctParts)\mathrm{CombinatorialStat}({\operatorname{IntegerPartition}}([2]), \text{DistinctParts})Out11

Known value · FindStat St000159

FindStat's value for [3]

live ↗
InCombinatorialStat(IntegerPartition⁡([3]),DistinctParts)\mathrm{CombinatorialStat}({\operatorname{IntegerPartition}}([3]), \text{DistinctParts})Out11

Known value · FindStat St000159

About
Examples5
CrosswalkWikipediaMathWorldWikidataBritannicaOEISFindStat ×3