login
Triangle read by rows: T(n,k) = number of pseudo-square parallelogram (psp) polyominoes with semiperimeter n+1 and k columns.
3

%I #20 Mar 01 2020 20:44:25

%S 1,1,1,1,1,1,1,2,2,1,1,2,5,2,1,1,3,7,7,3,1,1,3,11,15,11,3,1,1,4,15,25,

%T 25,15,4,1,1,4,20,41,52,41,20,4,1,1,5,25,62,92,92,62,25,5,1,1,5,32,89,

%U 159,179,159,89,32,5,1,1,6,38,122,249,342,342,249,122,38,6,1

%N Triangle read by rows: T(n,k) = number of pseudo-square parallelogram (psp) polyominoes with semiperimeter n+1 and k columns.

%H Andrew Howroyd, <a href="/A245185/b245185.txt">Table of n, a(n) for n = 1..300</a>

%H Srecko Brlek, Andrea Frosini, Simone Rinaldi, Laurent Vuillon, <a href="https://doi.org/10.37236/1041">Tilings by translation: enumeration by a rational language approach</a>, The Electronic Journal of Combinatorics, vol. 13, (2006). See Table 2.

%e Triangle begins:

%e 1;

%e 1, 1;

%e 1, 1, 1;

%e 1, 2, 2, 1;

%e 1, 2, 5, 2, 1;

%e 1, 3, 7, 7, 3, 1;

%e 1, 3, 11, 15, 11, 3, 1;

%e 1, 4, 15, 25, 25, 15, 4, 1;

%e 1, 4, 20, 41, 52, 41, 20, 4, 1;

%e ...

%o (PARI)

%o IsPos(v)={for(i=1, #v, if(v[i]<=0, return(0))); 1}

%o E(b)={my(v=vector(hammingweight(b)-1), h=0, k=0); if(bittest(b,0), b>>=1); while(k<#v, if(bittest(b,0), k++; v[k]=h, h++); b>>=1); v}

%o Row(n)={my(v=vector(n)); forstep(b=2^n, 2*2^n, 2, my(r=E(b), d=b); for(k=1, n, d=bitor(d>>1, bitand(d,1)<<n); if(bittest(d,0) && !bittest(d,n), v[1+#r]+=IsPos(r-E(d))))); v}

%o { for(n=1, 10, print(Row(n))) } \\ _Andrew Howroyd_, Mar 01 2020

%Y Row sums are A244521(n+1).

%K nonn,tabl

%O 1,8

%A _N. J. A. Sloane_, Jul 20 2014

%E Name clarified and terms a(46) and beyond from _Andrew Howroyd_, Mar 01 2020