cp's OEIS Frontend

This is a front-end for the Online Encyclopedia of Integer Sequences, made by Christian Perfect. The idea is to provide OEIS entries in non-ancient HTML, and then to think about how they're presented visually. The source code is on GitHub.

A001329 Number of nonisomorphic groupoids with n elements.

This page as a plain text file.
%I A001329 M4760 N2035 #127 Feb 16 2025 08:32:23
%S A001329 1,1,10,3330,178981952,2483527537094825,14325590003318891522275680,
%T A001329 50976900301814584087291487087214170039,
%U A001329 155682086691137947272042502251643461917498835481022016
%N A001329 Number of nonisomorphic groupoids with n elements.
%C A001329 The number of isomorphism classes of closed binary operations on a set of order n.
%C A001329 The term "magma" is also used as an alternative for "groupoid" since the latter has a different meaning in e.g. category theory. - _Joel Brennan_, Jan 20 2022
%D A001329 N. J. A. Sloane, A Handbook of Integer Sequences, Academic Press, 1973 (includes this sequence).
%D A001329 N. J. A. Sloane and Simon Plouffe, The Encyclopedia of Integer Sequences, Academic Press, 1995 (includes this sequence).
%H A001329 Philip Tureček, <a href="/A001329/b001329.txt">Table of n, a(n) for n = 0..27</a>
%H A001329 J. Berman and S. Burris, <a href="http://www.math.uic.edu/~berman/1994-Groupoid-Catalog-Preprint.pdf">A computer study of 3-element groupoids</a> Lect. Notes Pure Appl. Math. 180 (1994) 379-429  <a href="http://www.ams.org/mathscinet-getitem?mr=1404949">MR1404949</a>
%H A001329 M. A. Harrison, <a href="http://dx.doi.org/10.1090/S0002-9939-1966-0200219-9">The number of isomorphism types of finite algebras</a>, Proc. Amer. Math. Soc., 17 (1966), 731-737.
%H A001329 Eric Postpischil, <a href="http://groups.google.com/groups?&amp;hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=11802%40shlump.nac.dec.com&amp;rnum=2">Posting to sci.math newsgroup, May 21 1990</a>
%H A001329 Marko Riedel, <a href="http://math.stackexchange.com/questions/47792/how-many-non-isomorphic-binary-structures-on-the-set-of-n-elements">Counting non-isomorphic binary relations</a>, Mathematics Stack Exchange question.
%H A001329 N. J. A. Sloane, <a href="/A001329/a001329.jpg">Overview of A001329, A001423-A001428, A258719, A258720.</a>
%H A001329 T. Tamura, <a href="/A001329/a001329.pdf">Some contributions of computation to semigroups and groupoids</a>, pp. 229-261 of J. Leech, editor, Computational Problems in Abstract Algebra. Pergamon, Oxford, 1970. (Annotated and scanned copy)
%H A001329 Philip Turecek, <a href="/A001329/a001329.txt">Maple program</a>
%H A001329 Philip Tureček, <a href="https://arxiv.org/abs/2305.00269">Counting Finite Magmas</a>, arXiv:2305.00269 [math.CO], 2023.
%H A001329 Eric Weisstein's World of Mathematics, <a href="https://mathworld.wolfram.com/Groupoid.html">Groupoid</a>
%H A001329 Wikipedia, <a href="https://en.wikipedia.org/wiki/Magma_(algebra)">Magma (algebra)</a>
%H A001329 <a href="/index/Gre#groupoids">Index entries for sequences related to groupoids</a>
%F A001329 a(n) = 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, ...] = Product_{i, j>=1} ( (Sum_{d|lcm(i, j)} (d*s_d))^(gcd(i, j)*s_i*s_j)). - _Christian G. Bower_, May 08 1998, Dec 03 2003
%F A001329 a(n) is asymptotic to n^(n^2)/n! = A002489(n)/A000142(n) ~ (e*n^(n-1))^n / sqrt(2*Pi*n). - _Christian G. Bower_, Dec 03 2003
%F A001329 a(n) = A079173(n) + A027851(n) = A079177(n) + A079180(n).
%F A001329 a(n) = A079183(n) + A001425(n) = A079187(n) + A079190(n).
%F A001329 a(n) = A079193(n) + A079196(n) + A079199(n) + A001426(n).
%p A001329 with(numtheory);
%p A001329 with(group):
%p A001329 with(combinat):
%p A001329 pet_cycleind_symm :=
%p A001329 proc(n)
%p A001329         local p, s;
%p A001329         option remember;
%p A001329         if n=0 then return 1; fi;
%p A001329         expand(1/n*add(a[l]*pet_cycleind_symm(n-l), l=1..n));
%p A001329 end;
%p A001329 pet_flatten_term :=
%p A001329 proc(varp)
%p A001329         local terml, d, cf, v;
%p A001329         terml := [];
%p A001329         cf := varp;
%p A001329         for v in indets(varp) do
%p A001329             d := degree(varp, v);
%p A001329             terml := [op(terml), seq(v, k=1..d)];
%p A001329             cf := cf/v^d;
%p A001329         od;
%p A001329         [cf, terml];
%p A001329 end;
%p A001329 bs_binop :=
%p A001329 proc(n)
%p A001329         option remember;
%p A001329         local dsjc, flat, p, q, len,
%p A001329               cyc, cyc1, cyc2, l1, l2, res;
%p A001329         if n=0 then return 1; fi;
%p A001329         if n=1 then return 1; fi;
%p A001329         res := 0;
%p A001329         for dsjc in pet_cycleind_symm(n) do
%p A001329             flat := pet_flatten_term(dsjc);
%p A001329             p := 1;
%p A001329             for cyc1 in flat[2] do
%p A001329                 l1 := op(1, cyc1);
%p A001329                 for cyc2 in flat[2] do
%p A001329                     l2 := op(1, cyc2);
%p A001329                     len := lcm(l1,l2); q := 0;
%p A001329                     for cyc in flat[2] do
%p A001329                         if len mod op(1, cyc) = 0 then
%p A001329                            q := q  + op(1, cyc);
%p A001329                         fi;
%p A001329                     od;
%p A001329                     p := p * q^(l1*l2/len);
%p A001329                 od;
%p A001329             od;
%p A001329             res := res + p*flat[1];
%p A001329         od;
%p A001329         res;
%p A001329 end;
%t A001329 magmas[n_] := (
%t A001329     rul1 = {{a[i_],j_},{a[k_],l_}} :> sum[i,k]^(j*l*GCD[i,k]*(2-Boole[i==k]));
%t A001329     rul2 = {a[r_],s_} :> If[Mod[lcm,r]==0,r*s,0];
%t A001329     trans[mo_] := (
%t A001329         listc = FactorList@mo;
%t A001329         list = listc[[2;;]];
%t A001329         sum[i_,k_] := (
%t A001329             lcm = LCM[i,k];
%t A001329             Plus@@(list/.rul2)
%t A001329         );
%t A001329         pairs = Select[Tuples[list,2],OrderedQ];
%t A001329         listc[[1,1]]^listc[[1,2]]*Times@@(pairs/.rul1)
%t A001329     );
%t A001329     trans/@CycleIndexPolynomial[SymmetricGroup@n,Array[a,n]]
%t A001329 );
%t A001329 (* _Philip Turecek_, May 25 2022 *)
%o A001329 (Sage)
%o A001329 R.<a> = InfinitePolynomialRing(QQ)
%o A001329 @cached_function
%o A001329 def Z(n):
%o A001329     if n==0:
%o A001329         return R.one()
%o A001329     return sum(a[k]*Z(n-k) for k in (1..n))/n
%o A001329 def magmas(n):
%o A001329     P = Z(n)
%o A001329     q = 0
%o A001329     c = P.coefficients()
%o A001329     count = 0
%o A001329     for m in P.monomials():
%o A001329         r = 1
%o A001329         T = m.variables()
%o A001329         S = list(T)
%o A001329         for u in T:
%o A001329             i = R.varname_key(str(u))[1]
%o A001329             j = m.degree(u)
%o A001329             D = 0
%o A001329             for d in divisors(i):
%o A001329                 D += d*m.degrees()[-d-1]
%o A001329             r *= D^(i*j^2)
%o A001329             S.remove(u)
%o A001329             for v in S:
%o A001329                 k = R.varname_key(str(v))[1]
%o A001329                 l = m.degree(v)
%o A001329                 D = 0
%o A001329                 for d in divisors(lcm(i,k)):
%o A001329                     try:
%o A001329                         D += d*m.degrees()[-d-1]
%o A001329                     except:
%o A001329                         break
%o A001329                 r *= D^(gcd(i,k)*j*l*2)
%o A001329         q += c[count]*r
%o A001329         count += 1
%o A001329     return q
%o A001329 # _Philip Turecek_, Nov 20 2022
%Y A001329 Cf. A001424, A001425, A002489, A006448, A029850, A030245-A030265, A030271, A038015-A038023.
%K A001329 nonn,nice
%O A001329 0,3
%A A001329 _N. J. A. Sloane_
%E A001329 More terms from _Christian G. Bower_, May 08 1998