OFFSET
0,1
COMMENTS
LINKS
Alois P. Heinz, Table of n, a(n) for n = 0..444
Equational Theories project, Basic theory of magmas.
Equational Theories project, Generating a list of equations on magmas, Python script.
Terence Tao, A pilot project in universal algebra to explore new ways to collaborate and use machine assistance?, 25 Sep 2024.
FORMULA
EXAMPLE
For n=0 the distinct laws are x=x and x=y.
For n=1 the distinct laws are x=x*x, x=x*y, x=y*x, x=y*y, and x=y*z. (x*y=z, for instance, is a relabeling of x=y*z after applying symmetry.)
PROG
(PARI) \\ All functions that are needed
a110(n) = sum(k=0, n, stirling(n, k, 2)); \\ Bell
a108(n) = binomial(2*n, n)/(n+1); \\ Catalan
a289679(n) = a108(n-1)*a110(n);
Ach(n, k)= my(s=n<2 && n>=0 && n==k); if(n<=1, s, k*Ach(n-2, k) + Ach(n-2, k-1) + Ach(n-2, k-2) + s);
a103293(n) = if(n<3, 1, sum(k=0, n-1, stirling(n-1, k, 2) + Ach(n-1, k))/2);
a376620(n) = if(n%2==0, (a289679(n+2) + a108(n/2) * (2*a103293(n+3) - a110(n+2)))/2, a289679(n+2)/2); \\ Hugo Pfoertner, Sep 30 2024
(Python)
from functools import lru_cache
from sympy.functions.combinatorial.numbers import stirling, bell, catalan
def A376620(n):
if n&1:
return catalan(n+1)*bell(n+2)>>1
else:
@lru_cache(maxsize=None)
def ach(n, k): return (n==k) if n<2 else k*ach(n-2, k)+ach(n-2, k-1)+ach(n-2, k-2)
return catalan(n+1)*bell(n+2)+catalan(n>>1)*((sum(stirling(n+2, k, kind=2)+ach(n+2, k)>>1 for k in range(n+3))<<1)-bell(n+2))>>1 # Chai Wah Wu, Oct 15 2024
CROSSREFS
KEYWORD
nonn
AUTHOR
Terence Tao, Sep 30 2024
EXTENSIONS
a(7) and beyond from Michael S. Branicky, Sep 30 2024 using formulas
STATUS
approved