OFFSET
0,13
COMMENTS
A domicule is either a domino or it is formed by the union of two neighboring unit squares connected via their corners. In a tiling the connections of two domicules are allowed to cross each other.
LINKS
Alois P. Heinz, Antidiagonals n = 0..36, flattened
EXAMPLE
A(3,2) = 5:
+-----+ +-----+ +-----+ +-----+ +-----+
|o o-o| |o o o| |o o o| |o o o| |o-o o|
|| | || X | || | || | X || | ||
|o o-o| |o o o| |o o o| |o o o| |o-o o|
+-----+ +-----+ +-----+ +-----+ +-----+
A(4,3) = 43:
+-------+ +-------+ +-------+ +-------+ +-------+
|o o o o| |o o o-o| |o o-o o| |o o-o o| |o o-o o|
|| X || | X | | \ / | || || | \ ||
|o o o o| |o o o o| |o o o o| |o o o o| |o o o o|
| | | X | || || | \ \ | || \ |
|o-o o-o| |o-o o o| |o o-o o| |o-o o o| |o o-o o|
+-------+ +-------+ +-------+ +-------+ +-------+ ...
Square array A(n,k) begins:
1, 1, 1, 1, 1, 1, 1, ...
1, 0, 1, 0, 1, 0, 1, ...
1, 1, 3, 5, 11, 21, 43, ...
1, 0, 5, 0, 43, 0, 451, ...
1, 1, 11, 43, 280, 1563, 9415, ...
1, 0, 21, 0, 1563, 0, 162409, ...
1, 1, 43, 451, 9415, 162409, 3037561, ...
MAPLE
b:= proc(n, l) option remember; local d, f, k;
d:= nops(l)/2; f:=false;
if n=0 then 1
elif l[1..d]=[f$d] then b(n-1, [l[d+1..2*d][], true$d])
else for k to d while not l[k] do od;
`if`(k<d and n>1 and l[k+d+1],
b(n, subsop(k=f, k+d+1=f, l)), 0)+
`if`(k>1 and n>1 and l[k+d-1],
b(n, subsop(k=f, k+d-1=f, l)), 0)+
`if`(n>1 and l[k+d], b(n, subsop(k=f, k+d=f, l)), 0)+
`if`(k<d and l[k+1], b(n, subsop(k=f, k+1=f, l)), 0)
fi
end:
A:= (n, k)-> `if`(irem(n*k, 2)>0, 0,
`if`(k>n, A(k, n), b(n, [true$(k*2)]))):
seq(seq(A(n, d-n), n=0..d), d=0..14);
MATHEMATICA
b[n_, l_List] := b[n, l] = Module[{d = Length[l]/2, f = False, k}, Which [n == 0, 1, l[[1 ;; d]] == Array[f&, d], b[n-1, Join[l[[d+1 ;; 2*d]], Array[True&, d]]], True, For[k=1, !l[[k]], k++]; If[k<d && n>1 && l[[k+d+1]], b[n, ReplacePart[l, {k -> f, k+d+1 -> f}]], 0] + If[k>1 && n>1 && l[[k+d-1]], b[n, ReplacePart[l, {k -> f, k+d-1 -> f}]], 0] + If[n>1 && l[[k+d]], b[n, ReplacePart[l, {k -> f, k+d -> f}]], 0] + If[k<d && l[[k+1]], b[n, ReplacePart[l, {k -> f, k+1 -> f}]], 0]]]; A[n_, k_] := If[Mod[n*k, 2]>0, 0, If[k>n, A[k, n], b[n, Array[True&, k*2]]]]; Table[Table[A[n, d-n], {n, 0, d}], {d, 0, 14}] // Flatten (* Jean-François Alcover, Feb 02 2015, after Alois P. Heinz *)
CROSSREFS
KEYWORD
nonn,tabl
AUTHOR
Alois P. Heinz, Mar 13 2014
STATUS
approved