%I #38 May 03 2020 08:03:58
%S 1,2,5,14,36,92,234,586,1452,3562,8674,20956,50290,119922,284308,
%T 670458,1573250,3674700,8546282,19796234,45681908,105041402,240723618,
%U 549919604,1252492674,2844551866,6442833156,14555300218,32801922154,73749649900,165443000338
%N Number of compositions derived from the overpartitions of n.
%C Start by enumerating the overpartitions of n, then allow the parts to vary their arrangements.
%H Vaclav Kotesovec, <a href="/A297120/b297120.txt">Table of n, a(n) for n = 0..3000</a> (terms 0..1000 from Alois P. Heinz)
%e The A015128(4) = 14 overpartitions of 4 are: 4; 4'; 3,1; 3,1'; 3'1; 3',1', 2,2; 2',2; 2,1,1; 2,1',1; 2',1,1; 2',1',1; 1,1,1,1; and 1',1,1,1. The corresponding 36 compositions are 4; 4'; 3,1; 1,3; 3,1'; 1',3; 3',1; 1,3'; 3',1'; 1',3'; 2,2; 2,2'; 2',2; 2,1,1; 1,2,1; 1,1,2; 2,1,1'; 2,1',1; 1,2,1'; 1,1',2'; 1',1,2; 1',2,1; 2',1,1; 1,2',2; 1,1,2'; 2',1,1'; 2',1',1; 1,2',1'; 1,1',2'; 1',2',1; 1',1,2'; 1,1,1,1; 1,1,1,1'; 1,1,1',1; 1,1',1,1; and 1',1,1,1. Note: For a sequence of like parts p,p,...p, an overcomposition of n will only recognize p,p...p and p',p...,p; the p' is not allowed to be other than the initial p term.
%p b:= proc(n, i, p) option remember; `if`(n=0 or i=1, (p+n)!*
%p (1+n)/n!, add(b(n-i*j, i-1, p+j)*(1+j)/j!, j=0..n/i))
%p end:
%p a:= n-> b(n$2, 0):
%p seq(a(n), n=0..35); # _Alois P. Heinz_, Dec 26 2017
%t b[n_, i_, p_] := b[n, i, p] = If[n == 0 || i == 1, (p + n)!*(n + 1)/n!, Sum[b[n - i*j, i - 1, p + j]*(j + 1)/j!, {j, 0, n/i}]];
%t a[n_] := b[n, n, 0];
%t Table[a[n], {n, 0, 35}] (* _Jean-François Alcover_, Dec 27 2017, after _Alois P. Heinz_ *)
%o (PARI) {my(n=30); apply(p->subst(serlaplace(p), y, 1), Vec(prod(k=1, n, (1+y*x^k)*exp(y*x^k + O(x*x^n)))))} \\ _Andrew Howroyd_, Dec 26 2017
%o (Python)
%o from sympy.core.cache import cacheit
%o from sympy import factorial
%o @cacheit
%o def b(n, i, p): return factorial(p + n)*(n + 1)//factorial(n) if n==0 or i==1 else sum(b(n - i*j, i - 1, p + j)*(j + 1)//factorial(j) for j in range(n//i + 1))
%o def a(n): return b(n, n, 0)
%o print([a(n) for n in range(41)]) # _Indranil Ghosh_, Dec 29 2017, after Maple code
%Y Cf. A015128, A236002.
%K nonn
%O 0,2
%A _Gregory L. Simay_, Dec 25 2017
%E More terms from _Alois P. Heinz_, Dec 26 2017
|