%I #43 Oct 15 2024 15:03:05
%S 2,5,41,364,4294,57882,888440,15120105,281942218,5698630860,
%T 123850400282,2875187314622,70909556575040,1849319825544900,
%U 50801676938400207,1464954360561398340,44213852151914127210,1392971702129279452950,45705100441643456206404,1558551328538087579977710
%N Number of equational laws for magmas involving n operations, up to relabeling and symmetry.
%C Is always at least A289679(n+2)/2 (with equality when n is odd), and at most A289679(n+2).
%C If one does not invoke symmetry, the sequence becomes A289679(n+2).
%C For a Python script to enumerate the laws (which also deletes trivial laws w=w) see the links.
%H Alois P. Heinz, <a href="/A376620/b376620.txt">Table of n, a(n) for n = 0..444</a>
%H Equational Theories project, <a href="https://teorth.github.io/equational_theories/blueprint/sect0001.html">Basic theory of magmas</a>.
%H Equational Theories project, <a href="https://github.com/teorth/equational_theories/blob/main/scripts/generate_eqs_list.py">Generating a list of equations on magmas</a>, Python script.
%H Terence Tao, <a href="https://terrytao.wordpress.com/2024/09/25/a-pilot-project-in-universal-algebra-to-explore-new-ways-to-collaborate-and-use-machine-assistance/">A pilot project in universal algebra to explore new ways to collaborate and use machine assistance?</a>, 25 Sep 2024.
%F For odd n, a(n) = A289679(n+2)/2.
%F For even n, a(n) = (A289679(n+2) + A000108(n/2) * (2*A103293(n+3) - A000110(n+2)))/2.
%e For n=0 the distinct laws are x=x and x=y.
%e 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.)
%o (PARI) \\ All functions that are needed
%o a110(n) = sum(k=0, n, stirling(n,k,2)); \\ Bell
%o a108(n) = binomial(2*n,n)/(n+1); \\ Catalan
%o a289679(n) = a108(n-1)*a110(n);
%o 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);
%o a103293(n) = if(n<3, 1, sum(k=0, n-1, stirling(n-1,k,2) + Ach(n-1,k))/2);
%o 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
%o (Python)
%o from functools import lru_cache
%o from sympy.functions.combinatorial.numbers import stirling, bell, catalan
%o def A376620(n):
%o if n&1:
%o return catalan(n+1)*bell(n+2)>>1
%o else:
%o @lru_cache(maxsize=None)
%o 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)
%o 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
%Y Cf. A000108, A000110, A002489, A103293, A289679, A376640.
%K nonn
%O 0,1
%A _Terence Tao_, Sep 30 2024
%E a(7) and beyond from _Michael S. Branicky_, Sep 30 2024 using formulas