FUNCTION: partitions[ptnCC] - partitions with part diff at least 3
CALLING SEQUENCE: ptnCC(ptn)
PARAMETERS: ptn - partition
GLOBAL VARIABLES: NONE
SYNOPSIS:
Returns true if ptn is a partition in which difference between parts
is at least 3.
EXAMPLES:
> with(combinat):
> with(partitions):
> with(qseries):
> ptn1:=[1,3,6];
ptn1 := [1, 3, 6]
> ptnCC(ptn1);
false
> ptn2:=[1,6,9];
ptn2 := [1, 6, 9]
> ptnCC(ptn2);
true
> ptns:=partition(9):
> ptns1:=select(ptnCC,ptns);
ptns1 := [[3, 6], [2, 7], [1, 8], [9]]
> nops(ptns), nops(ptns1);
30, 4
> GENFUNC:=1+add(nops(select(ptnCC,partition(n)))*q^n,n=1..30);
30 29 28 27 26 25 24
GENFUNC := 66 q + 58 q + 52 q + 46 q + 41 q + 36 q + 32 q
23 22 21 20 19 18 17 16
+ 28 q + 25 q + 22 q + 19 q + 17 q + 15 q + 13 q + 11 q
15 14 13 12 11 10 9 8 7
+ 10 q + 8 q + 7 q + 6 q + 5 q + 4 q + 4 q + 3 q + 3 q
6 5 4 3 2
+ 2 q + 2 q + q + q + q + q + 1
> prodmake(GENFUNC,q,30,list);
[-1, 0, 0, 0, -1, 0, -1, 0, -1, 1, -1, 0, -1, 1, -2, 1, -2, 1, -2, 2, -3,
3, -3, 3, -5, 5, -6, 5, -8]
DISCUSSION: ptn1 is not such a partition, ptn2 is
Of the 30 partitions of 9 only 4 satisfy the condition
The generating function does not look like a nice product
SEE ALSO: ptnDP, ptnRR