|
PROG
|
(PARI) tnnk(n, k) = if (!n && !k, 1, sumdiv(gcd(n, k), d, eulerphi(d)*binomial((2*n+k)/d, n/d))/(2*n+k));
tnmk(n, m, k) = if (k==0, tnnk(n, 0)*tnnk(m, 0), k*sumdiv(gcd(k, gcd(n, m)), d, eulerphi(d)*binomial((2*n+k)/d, n/d)*binomial((2*m+k)/d, m/d))/((2*n+k)*(2*m+k)));
ann(n, m) = {if ((n+m) % 2, return (0)); if (n<m, return (ann(m, n))); sum(k=0, m, if (!((n-k)%2) && !((m-k)%2), tnmk((n-k)/2, (m-k)/2, k), 0)); }
a(n) = sum(k=0, n, ann(n-k, k));
|