cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A226874 Number T(n,k) of n-length words w over a k-ary alphabet {a1, a2, ..., ak} such that #(w,a1) >= #(w,a2) >= ... >= #(w,ak) >= 1, where #(w,x) counts the letters x in word w; triangle T(n,k), n >= 0, 0 <= k <= n, read by rows.

Original entry on oeis.org

1, 0, 1, 0, 1, 2, 0, 1, 3, 6, 0, 1, 10, 12, 24, 0, 1, 15, 50, 60, 120, 0, 1, 41, 180, 300, 360, 720, 0, 1, 63, 497, 1260, 2100, 2520, 5040, 0, 1, 162, 1484, 6496, 10080, 16800, 20160, 40320, 0, 1, 255, 5154, 20916, 58464, 90720, 151200, 181440, 362880
Offset: 0

Views

Author

Alois P. Heinz, Jun 21 2013

Keywords

Comments

T(n,k) is the sum of multinomials M(n; lambda), where lambda ranges over all partitions of n into parts that form a multiset of size k.

Examples

			T(4,2) = 10: aaab, aaba, aabb, abaa, abab, abba, baaa, baab, baba, bbaa.
T(4,3) = 12: aabc, aacb, abac, abca, acab, acba, baac, baca, bcaa, caab, caba, cbaa.
T(5,2) = 15: aaaab, aaaba, aaabb, aabaa, aabab, aabba, abaaa, abaab, ababa, abbaa, baaaa, baaab, baaba, babaa, bbaaa.
Triangle T(n,k) begins:
  1;
  0,  1;
  0,  1,   2;
  0,  1,   3,    6;
  0,  1,  10,   12,   24;
  0,  1,  15,   50,   60,   120;
  0,  1,  41,  180,  300,   360,   720;
  0,  1,  63,  497, 1260,  2100,  2520,  5040;
  0,  1, 162, 1484, 6496, 10080, 16800, 20160, 40320;
  ...
		

Crossrefs

Main diagonal gives: A000142.
Row sums give: A005651.
T(2n,n) gives A318796.

Programs

  • Maple
    b:= proc(n, i, t) option remember;
          `if`(t=1, 1/n!, add(b(n-j, j, t-1)/j!, j=i..n/t))
        end:
    T:= (n, k)-> `if`(n*k=0, `if`(n=k, 1, 0), n!*b(n, 1, k)):
    seq(seq(T(n, k), k=0..n), n=0..12);
    # second Maple program:
    b:= proc(n, i) option remember; expand(
          `if`(n=0, 1, `if`(i<1, 0, add(x^j*b(n-i*j, i-1)*
          combinat[multinomial](n, n-i*j, i$j), j=0..n/i))))
        end:
    T:= n-> (p-> seq(coeff(p, x, i), i=0..n))(b(n$2)):
    seq(T(n), n=0..12);
  • Mathematica
    b[n_, i_, t_] := b[n, i, t] = If[t == 1, 1/n!, Sum[b[n - j, j, t - 1]/j!, {j, i, n/t}]]; t[n_, k_] := If[n*k == 0, If[n == k, 1, 0], n!*b[n, 1, k]]; Table[Table[t[n, k], {k, 0, n}], {n, 0, 12}] // Flatten (* Jean-François Alcover, Dec 13 2013, translated from first Maple *)
  • PARI
    T(n)={Vec(serlaplace(prod(k=1, n, 1/(1-y*x^k/k!) + O(x*x^n))))}
    {my(t=T(10)); for(n=1, #t, for(k=0, n-1, print1(polcoeff(t[n], k), ", ")); print)} \\ Andrew Howroyd, Dec 20 2017

Formula

T(n,k) = A226873(n,k) - [k>0] * A226873(n,k-1).