Displaying 1-3 of 3 results found.
page
1
Triangle read by rows, the coefficients of the inverse partial P-polynomials.
+0
1
1, 0, -1, 0, -1, 1, 0, -2, 1, 2, -1, 0, -5, 5, -1, 5, -2, -3, 1, 0, -14, 21, -3, -6, 1, 14, -12, 2, -9, 3, 4, -1, 0, -42, 84, -28, -28, 7, 7, -1, 42, -56, 7, 14, -2, -28, 21, -3, 14, -4, -5, 1
COMMENTS
The triangle of coefficients of the partial P-polynomials is A269941. For the definition of the inverse partial P-polynomials see the link 'P-transform'.
EXAMPLE
[[1]],
[[0], [-1]],
[[0], [-1], [1]],
[[0], [-2, 1], [2], [-1]],
[[0], [-5, 5, -1], [5, -2], [-3], [1]],
[[0], [-14, 21, -3, -6, 1], [14, -12, 2], [-9, 3], [4], [-1]]],
[[0], [-42,84,-28,-28,7,7,-1],[42,-56,7,14,-2],[-28,21,-3],[14,-4],[-5],[1]]
Replacing the sublists by their sums reduces the triangle to a signed version of the triangle A097805. The column 1 of sublists is A111785 in a different order.
PROG
(Sage)
# For function PMultiCoefficients see A269941.
PMultiCoefficients(7, inverse = True)
Triangle read by rows, the coefficients of the partial P-polynomials.
+0
16
1, 0, -1, 0, -1, 1, 0, -1, 2, -1, 0, -1, 1, 2, -3, 1, 0, -1, 2, 2, -3, -3, 4, -1, 0, -1, 1, 2, 2, -1, -6, -3, 6, 4, -5, 1, 0, -1, 2, 2, 2, -3, -3, -6, -3, 4, 12, 4, -10, -5, 6, -1, 0, -1, 1, 2, 2, 2, -3, -3, -6, -6, -3, 1, 12, 6, 12, 4, -10, -20, -5, 15, 6, -7, 1
COMMENTS
For the definition of the partial P-polynomials see the link 'P-transform'. The triangle of coefficients of the inverse partial P-polynomials is A269942.
EXAMPLE
[[1]],
[[0], [-1]],
[[0], [-1], [1]],
[[0], [-1], [2], [-1]],
[[0], [-1], [1, 2], [-3], [1]],
[[0], [-1], [2, 2], [-3, -3], [4], [-1]],
[[0], [-1], [1, 2, 2], [-1, -6, -3], [6, 4], [-5], [1]],
[[0], [-1], [2, 2, 2], [-3, -3, -6, -3], [4, 12, 4], [-10, -5], [6], [-1]]
Replacing the sublists by their sums reduces the triangle to a signed version of the triangle A097805.
MAPLE
PTrans := proc(n, f, nrm:=NULL) local q, p, r, R;
if n = 0 then return [1] fi; R := [seq(0, j=0..n)];
for q in combinat:-partition(n) do
p := [op(ListTools:-Reverse(q)), 0]; r := p[1]+1;
mul(binomial(p[j], p[j+1])*f(j)^p[j], j=1..nops(q));
R[r] := R[r]-(-1)^r*% od;
if nrm = NULL then R else [seq(nrm(n, k)*R[k+1], k=0..n)] fi end:
A269941_row := n -> seq(coeffs(p), p in PTrans(n, n -> x[n])):
seq(lprint( A269941_row(n)), n=0..8);
PROG
(Sage)
def PtransMatrix(dim, f, norm = None, inverse = False, reduced = False):
i = 1; F = [1]
if reduced:
while i <= dim: F.append(f(i)); i += 1
else:
while i <= dim: F.append(F[i-1]*f(i)); i += 1
C = [[0 for k in range(m+1)] for m in range(dim)]
C[0][0] = 1
if inverse:
for m in (1..dim-1):
C[m][m] = -C[m-1][m-1]/F[1]
for k in range(m-1, 0, -1):
C[m][k] = -(C[m-1][k-1]+sum(F[i]*C[m][k+i-1]
for i in (2..m-k+1)))/F[1]
else:
for m in (1..dim-1):
C[m][m] = -C[m-1][m-1]*F[1]
for k in range(m-1, 0, -1):
C[m][k] = -sum(F[i]*C[m-i][k-1] for i in (1..m-k+1))
if norm == None: return C
for m in (1..dim-1):
for k in (1..m): C[m][k] *= norm(m, k)
return C
def PMultiCoefficients(dim, norm = None, inverse = False):
def coefficient(p):
if p <= 1: return [p]
return SR(p).fraction(ZZ).numerator().coefficients()
f = lambda n: var('x'+str(n))
P = PtransMatrix(dim, f, norm, inverse)
return [[coefficient(p) for p in L] for L in P]
print(flatten(PMultiCoefficients(9)))
Triangle read by rows, the coefficients of the Bell polynomials.
+0
7
1, 0, 1, 0, 1, 1, 0, 1, 3, 1, 0, 1, 3, 4, 6, 1, 0, 1, 10, 5, 15, 10, 10, 1, 0, 1, 10, 15, 6, 15, 60, 15, 45, 20, 15, 1, 0, 1, 35, 21, 7, 105, 70, 105, 21, 105, 210, 35, 105, 35, 21, 1, 0, 1, 35, 56, 28, 8, 280, 210, 280, 168, 28, 105, 840, 280, 420, 56, 420, 560, 70, 210, 56, 28, 1
COMMENTS
The triangle of coefficients of the inverse Bell polynomials is A268442.
REFERENCES
L. Comtet, Advanced combinatorics, The art of finite and infinite expansions, 1974.
FORMULA
E.g.f.: exp( Sum_{k>=1} x_{k}*t^k/k! ), monomials in negative lexicographic order.
EXAMPLE
[[1]]
[[0], [1]]
[[0], [1], [1]]
[[0], [1], [3], [1]]
[[0], [1], [3, 4], [6], [1]]
[[0], [1], [10, 5], [15, 10], [10], [1]]
[[0], [1], [10, 15, 6], [15, 60, 15], [45, 20], [15], [1]]
Replacing the sublists by their sums reduces the triangle to the triangle of the Stirling numbers of second kind ( A048993).
MATHEMATICA
BellCoeffs[n_, k_] := Module[{v, r},
v = Table[Subscript[x, j], {j, 1, n}]; (* list of variables *)
r = Table[Subscript[x, j]->1, {j, 1, n}]; (* evaluated at 1 *)
MonomialList[BellY[n, k, v], v, NegativeLexicographic] /. r];
A268441Row[n_] := Table[BellCoeffs[n, k], {k, 0, n}] // Flatten;
Do[Print[A268441Row[n]], {n, 0, 8}] (* Peter Luschny, Feb 08 2016 *)
max = 9; egf = Exp[Sum[x[k]*t^k/k!, {k, 1, max}]]; P = Table[n!* SeriesCoefficient[egf, {t, 0, n}], {n, 0, max-1}]; row[n_] := (s = Split[ Sort[{ Exponent[# /. x[_] -> x, x], #}& /@ (List @@ Expand[P[[n]]])], #1[[1]] == #2[[1]]&]; Join[{0}, #[[All, 2]]& /@ (s /. x[_] -> 1) // Flatten]); row[1] = {1}; Array[row, max] // Flatten (* Jean-François Alcover, Feb 08 2016 *)
PROG
(Sage)
import itertools
c = [bell_polynomial(n, k).coefficients() for k in (0..n)]
if n>0: c[0] = [0]
return list(itertools.chain(*c))
for n in range(9): print( A268441_row(n))
Search completed in 0.007 seconds
|