OFFSET
0,3
COMMENTS
*---*
| |
*---* *---*---*---*
| | | | | |
*---* *---*---*---* *---*---*---*---*---*
HMD_1 HMD_2 HMD_3
-------------------------------------------------
*---*
| |
*---*---*---*
| | | |
*---*---*---*---*---*
| | | | | |
*---*---*---*---*---*---*---*
HMD_4
LINKS
Seiichi Manyama, Table of n, a(n) for n = 0..45
Mihai Ciucu, Symmetry classes of spanning trees of Aztec diamonds and perfect matchings of odd squares with a unit hole, arXiv:0710.4500 [math.CO], 2007. See Corollary 3.6.
Wikipedia, Chebyshev polynomials
Wikipedia, Resultant
FORMULA
a(n) = Product_{1<=j<k<=2*n-1 and j+k<=2*n-1} (4 - 4*cos(j*Pi/(2*n))*cos(k*Pi/(2*n))).
a(n) = 4^(n-1) * A340139(n) = 4^((n-1)^2) * Product_{1<=j<k<=n-1} (1 - cos(j*Pi/(2*n))^2 * cos(k*Pi/(2*n))^2) for n > 0. - Seiichi Manyama, Jan 02 2021
a(n) ~ sqrt(Gamma(1/4)) * exp(4*G*n^2/Pi) / (Pi^(3/8) * n^(3/4) * 2^(n - 1/4) * (1 + sqrt(2))^n), where G is Catalan's constant A006752. - Vaclav Kotesovec, Jan 05 2021
EXAMPLE
a(2) = 4;
* * *---* *---* *---*
| | | | | |
*---*---*---* *---*---*---* *---*---*---* *---* *---*
PROG
(PARI) default(realprecision, 120);
{a(n) = round(prod(j=1, 2*n-1, prod(k=j+1, 2*n-1-j, 4-4*cos(j*Pi/(2*n))*cos(k*Pi/(2*n)))))}
(PARI) {a007341(n) = polresultant(polchebyshev(n-1, 2, x/2), polchebyshev(n-1, 2, (4-x)/2))};
{a334088(n) = sqrtint(polresultant(polchebyshev(2*n, 1, x/2), polchebyshev(2*n, 1, I*x/2)))};
{a(n) = if(n==0, 1, sqrtint(a007341(n)*a334088(n)/n))}
(PARI) default(realprecision, 120);
{a(n) = if(n==0, 1, round(4^((n-1)^2)*prod(j=1, n-1, prod(k=j+1, n-1, 1-(cos(j*Pi/(2*n))*cos(k*Pi/(2*n)))^2))))} \\ Seiichi Manyama, Jan 02 2021
(Python)
# Using graphillion
from graphillion import GraphSet
def make_HMD(n):
s = 1
grids = []
for i in range(2 * n, 0, -2):
for j in range(i - 2):
a, b, c = s + j, s + j + 1, s + i + j
grids.extend([(a, b), (b, c)])
grids.append((s + i - 2, s + i - 1))
s += i
return grids
def A340176(n):
if n == 0: return 1
universe = make_HMD(n)
GraphSet.set_universe(universe)
spanning_trees = GraphSet.trees(is_spanning=True)
return spanning_trees.len()
print([A340176(n) for n in range(7)])
CROSSREFS
KEYWORD
nonn
AUTHOR
Seiichi Manyama, Dec 31 2020
STATUS
approved