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.

A334550 Triangle read by rows: T(n,k) is the number of binary matrices with n ones, k columns and no zero rows or columns, up to permutations of rows and columns.

Original entry on oeis.org

1, 1, 2, 1, 2, 3, 1, 5, 5, 5, 1, 5, 12, 9, 7, 1, 9, 23, 29, 17, 11, 1, 9, 39, 62, 57, 28, 15, 1, 14, 63, 147, 154, 110, 47, 22, 1, 14, 102, 278, 409, 329, 194, 73, 30, 1, 20, 150, 568, 991, 1023, 664, 335, 114, 42, 1, 20, 221, 1020, 2334, 2844, 2267, 1243, 549, 170, 56
Offset: 1

Views

Author

Andrew Howroyd, Jul 03 2020

Keywords

Comments

T(n,k) is also the number of non-isomorphic set multipartitions (multisets of sets) of weight n with k parts.

Examples

			Triangle begins:
  1;
  1,  2;
  1,  2,  3;
  1,  5,  5,   5;
  1,  5, 12,   9,   7;
  1,  9, 23,  29,  17,  11;
  1,  9, 39,  62,  57,  28, 15;
  1, 14, 63, 147, 154, 110, 47, 22;
  ...
The T(4,3) = 5 matrices are:
  [1 0 0]   [1 0 0]   [1 1 0]   [1 1 1]   [1 1 0]
  [1 0 0]   [1 0 0]   [1 0 0]   [1 0 0]   [1 0 1]
  [0 1 0]   [0 1 1]   [0 0 1]
  [0 0 1]
The T(4,3) = 5 the set multipartitions are:
  {{1,2}, {3}, {4}},
  {{1,2}, {3}, {3}},
  {{1,2}, {1}, {3}},
  {{1,2}, {1}, {1}},
  {{1,2}, {1}, {2}}.
		

Crossrefs

Row sums are A049311.
Main diagonal is A000041.

Programs

  • PARI
    \\ See A321609 for definition of M.
    T(n, k)={M(k, n, n) - M(k-1, n, n)}
    for(n=1, 10, for(k=1, n, print1(T(n, k), ", ")); print)
    
  • PARI
    \\ Faster version.
    permcount(v) = {my(m=1, s=0, k=0, t); for(i=1, #v, t=v[i]; k=if(i>1&&t==v[i-1], k+1, 1); m*=t*k; s+=t); s!/m}
    K(q, t, n)={prod(j=1, #q, (1+x^lcm(t, q[j]) + O(x*x^n))^gcd(t, q[j]))}
    G(m,n)={my(s=0); forpart(q=m, s+=permcount(q)*exp(sum(t=1, n, (K(q, t, n)-1)/t) + O(x*x^n))); s/m!}
    A(n,m=n)={my(p=sum(k=0, m, G(k,n)*y^k)*(1-y)); matrix(n, m, n, k, polcoef(polcoef(p, n, x), k, y))}
    { my(T=A(10)); for(n=1, #T, print(T[n,1..n])) }