login
Number of equational laws for magmas involving n operations, up to relabeling and symmetry.
2

%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