OFFSET
1,2
COMMENTS
Except for a(2)=2 and a(4)=4, all of the terms in the sequence are odd. This is because of the existence of a non-abelian dihedral group of order 2m for each m > 2.
See similar comment with "squarefree terms" in A003277 (Donald J. McCarthy link). - Bernard Schott, Feb 20 2023
REFERENCES
W. R. Scott, Group Theory, Dover, 1987, page 217.
LINKS
Michael S. Branicky, Table of n, a(n) for n = 1..10000 (terms 1..1000 from T. D. Noe)
Donald J. McCarthy, A survey of partial converses to Lagrange's theorem on finite groups, Transactions of the New York Academy of Sciences, 1971, page 592.
J. Pakianathan and K. Shankar, Nilpotent Numbers, Amer. Math. Monthly, 107, August-September 2000, pp. 631-634.
FORMULA
m must be cubefree and its prime divisors must satisfy certain congruences.
Let the prime factorization of m be p1^e1 * ... * pr^er. Then m is in this sequence if ei < 3 for all i and pi^k is not congruent to 1 (mod pj) for all i and j and 1 <= k <= ei. - T. D. Noe, Mar 25 2007
EXAMPLE
a(4) = 4 because every group of order 4 is abelian.
These two abelian groups of order 4 are the cyclic group C_4 and the Klein four-group = C_2 X C_2, the smallest non-cyclic abelian group. - Bernard Schott, Feb 21 2023
MATHEMATICA
okQ[n_] := Module[{f, lf, p, e, v}, f = FactorInteger[n]; lf = Length[f]; p = f[[All, 1]]; e = f[[All, 2]]; If[AnyTrue[e, # > 2&], Return[False]]; v = p^e; For[i = 1, i <= lf, i++, For[j = i+1, j <= lf, j++, If[Mod[v[[i]], p[[j]]]==1 || Mod[v[[j]], p[[i]]]==1, Return[False]]]]; Return[True]];
Select[Range[200], okQ] (* Jean-François Alcover, May 03 2012, after PARI, updated Jan 10 2020 *)
PROG
(PARI) is(n)=my(f=factor(n), v=vector(#f[, 1])); for(i=1, #v, if(f[i, 2]>2, return(0), v[i]=f[i, 1]^f[i, 2])); for(i=1, #v, for(j=i+1, #v, if(v[i]%f[j, 1]==1 || v[j]%f[i, 1]==1, return(0)))); 1 \\ Charles R Greathouse IV, Feb 13 2011
(Haskell)
a051532 n = a051532_list !! (n-1)
a051532_list = filter ((== 1) . a212793) a056867_list
-- Reinhard Zumkeller, Jun 28 2013
(Python)
from sympy import factorint
def ok(n):
if n == 1: return True
f = factorint(n)
p, e = f.keys(), f.values()
if max(e) >= 3: return False
return all((pi**k)%pj!=1 for pi in p for pj in p if pj!=pi for k in range(1, f[pi]+1))
print([k for k in range(1, 162) if ok(k)]) # Michael S. Branicky, Feb 20 2023
CROSSREFS
KEYWORD
nonn,nice,easy
AUTHOR
Des MacHale, Dec 11 1999
STATUS
approved