OFFSET
0,4
COMMENTS
We call an irregular triangle T a partition triangle if T(n, k) is defined for n >= 0 and 0 <= k < A000041(n).
T_{m}(n, k) gives the number of ordered set partitions of the set {1, 2, ..., m*n} into sized blocks of shape m*P(n, k), where P(n, k) is the k-th integer partition of n in the 'canonical' order A080577. Here we assume the rows of A080577 to be 0-based and m*[a, b, c,..., h] = [m*a, m*b, m*c,..., m*h]. Here is case m = 2. For instance 2*P(4, .) = [[8], [6, 2], [4, 4], [4, 2, 2], [2, 2, 2, 2]].
EXAMPLE
Triangle starts (note the subdivisions by ';' (A072233)):
[0] [1]
[1] [1]
[2] [1; 6]
[3] [1; 30; 90]
[4] [1; 56, 70; 1260; 2520]
[5] [1; 90, 420; 3780, 9450; 75600; 113400]
[6] [1; 132, 990, 924; 8910, 83160, 34650; 332640, 1247400; 6237000; 7484400]
.
T(4, 1) = 56 because [6, 2] is the integer partition 2*P(4, 1) in the canonical order and there are 28 set partitions which have the shape [6, 2] (an example is {{1, 3, 4, 5, 6, 8}, {2, 7}}). Finally, since the order of the sets is taken into account, one gets 2!*28 = 56.
PROG
(Sage)
def GenOrdSetPart(m, n):
shapes = ([x*m for x in p] for p in Partitions(n))
return [factorial(len(s))*SetPartitions(sum(s), s).cardinality() for s in shapes]
def A327022row(n): return GenOrdSetPart(2, n)
for n in (0..6): print(A327022row(n))
CROSSREFS
KEYWORD
nonn,tabf
AUTHOR
Peter Luschny, Aug 27 2019
STATUS
approved