login
A090601
Number of n-element groupoids with an identity.
2
1, 2, 45, 43968, 6358196250, 236919104155855296, 3682959509036574988532481464, 35398008251644050232134479709365068115968, 292415292106611727928759157427747328169866020125762652311
OFFSET
1,2
COMMENTS
Also partial groupoids with n-1 elements or groupoids with an absorbant (zero) element with n elements.
FORMULA
a(n+1) = sum {1*s_1+2*s_2+...=n} (fixA[s_1, s_2, ...]/(1^s_1*s_1!*2^s_2*s2!*...)) where fixA[s_1, s_2, ...] = prod {i, j>=1} ( (1 + sum {d|lcm(i, j)} (d*s_d))^(gcd(i, j)*s_i*s_j))
a(n) asymptotic to n^((n-1)^2+1)/n! = A090602(n)/A000142(n) = A090603(n)/A000142(n-1)
PROG
(Sage)
R.<a> = InfinitePolynomialRing(QQ)
@cached_function
def Z(n):
if n==0:
return R.one()
return sum(a[k]*Z(n-k) for k in (1..n))/n
def magmas_identity(n):
P = Z(n-1)
q = 0
c = P.coefficients()
count = 0
for m in P.monomials():
r = 1
T = m.variables()
S = list(T)
for u in T:
i = R.varname_key(str(u))[1]
j = m.degree(u)
D = 1
for d in divisors(i):
D += d*m.degrees()[-d-1]
r *= D^(i*j^2)
S.remove(u)
for v in S:
k = R.varname_key(str(v))[1]
l = m.degree(v)
D = 1
for d in divisors(lcm(i, k)):
try:
D += d*m.degrees()[-d-1]
except:
break
r *= D^(gcd(i, k)*j*l*2)
q += c[count]*r
count += 1
return q
# Philip Turecek, Oct 10 2023
CROSSREFS
Sequence in context: A209606 A100101 A332244 * A266016 A071777 A179108
KEYWORD
nonn
AUTHOR
Christian G. Bower, Dec 05 2003
STATUS
approved