login
A321588
Number of connected nonnegative integer matrices with sum of entries equal to n, no zero rows or columns, and distinct rows and columns.
4
1, 1, 1, 9, 29, 181, 1285, 10635, 102355, 1118021, 13637175, 184238115, 2727293893, 43920009785, 764389610843, 14297306352937, 286014489487815, 6093615729757841, 137750602009548533, 3293082026520294529, 83006675263513350581, 2200216851785981586729, 61180266502369886181253
OFFSET
0,4
COMMENTS
A matrix is connected if the positions in each row (or each column) of the nonzero entries form a connected hypergraph.
LINKS
EXAMPLE
The a(4) = 29 matrices:
4 31 13
.
3 21 21 20 12 12 11 110 11 110 101 101 1 10 10 02 011 011 01 01
1 10 01 11 10 01 20 101 02 011 110 011 3 21 12 11 110 101 21 12
.
11 11 10 10 01 01
10 01 11 01 11 10
01 10 01 11 10 11
MATHEMATICA
prs2mat[prs_]:=Table[Count[prs, {i, j}], {i, Union[First/@prs]}, {j, Union[Last/@prs]}];
multsubs[set_, k_]:=If[k==0, {{}}, Join@@Table[Prepend[#, set[[i]]]&/@multsubs[Drop[set, i-1], k-1], {i, Length[set]}]];
csm[s_]:=With[{c=Select[Tuples[Range[Length[s]], 2], And[OrderedQ[#], UnsameQ@@#, Length[Intersection@@s[[#]]]>0]&]}, If[c=={}, s, csm[Union[Append[Delete[s, List/@c[[1]]], Union@@s[[c[[1]]]]]]]]];
Table[Length[Select[multsubs[Tuples[Range[n], 2], n], And[Union[First/@#]==Range[Max@@First/@#], Union[Last/@#]==Range[Max@@Last/@#], UnsameQ@@prs2mat[#], UnsameQ@@Transpose[prs2mat[#]], Length[csm[Map[Last, GatherBy[#, First], {2}]]]==1]&]], {n, 6}]
PROG
(PARI)
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, wf)={prod(j=1, #q, wf(t*q[j]))-1}
Q(m, n, wf=w->2)={my(s=0); forpart(p=m, s+=(-1)^#p*permcount(p)*exp(-sum(t=1, n, (-1)^t*x^t*K(p, t, wf)/t, O(x*x^n))) ); Vec((-1)^m*serchop(serlaplace(s), 1), -n)}
ConnectedMats(M)={my([m, n]=matsize(M), R=matrix(m, n)); for(m=1, m, for(n=1, n, R[m, n] = M[m, n] - sum(i=1, m-1, sum(j=1, n-1, binomial(m-1, i-1)*binomial(n, j)*R[i, j]*M[m-i, n-j])))); R}
seq(n)={my(R=vectorv(n, m, Q(m, n, w->1/(1 - y^w) + O(y*y^n)))); for(i=2, #R, R[i] -= i*R[i-1]); Vec(1 + vecsum( vecsum( Vec( ConnectedMats( Mat(R))))))} \\ Andrew Howroyd, Jan 24 2024
KEYWORD
nonn
AUTHOR
Gus Wiseman, Nov 13 2018
EXTENSIONS
a(7) onwards from Andrew Howroyd, Jan 24 2024
STATUS
approved