login
Integers not of one of the 5 forms p^k, p*q^k, 2*p*q^k, p*q*r or 2*p*q*r with p, q, r distinct primes and k>=0.
0

%I #6 Jan 07 2024 09:44:47

%S 36,60,72,84,100,108,120,132,140,144,156,168,180,196,200,204,216,220,

%T 225,228,240,252,260,264,276,280,288,300,308,312,315,324,336,340,348,

%U 360,364,372,380,392,396,400,408,420,432,440,441,444,450,456,460,468,476,480,484,492,495,500,504,516,520,525,528,532,540,552

%N Integers not of one of the 5 forms p^k, p*q^k, 2*p*q^k, p*q*r or 2*p*q*r with p, q, r distinct primes and k>=0.

%C Cyclic groups of these orders cannot be Schur groups, see the Theorem by [Evdokimov et al.].

%H S. Evdokimov, I. Kovacs, and I. Ponomarenko, <a href="https://doi.org/10.101080/00927872.2024.958848">On Schurity of Finite Abelian Groups</a>, Comm. Algebra 44 (2016) 101-117, see the Cyclic Schur Group Theorem.

%p isA007304 := proc(n)

%p if bigomega(n) = 3 and A001221(n) =3 then

%p true;

%p else

%p false ;

%p end if;

%p end proc:

%p # list of prime exponents

%p pexp := proc(n)

%p local e,pe ;

%p e := [] ;

%p for pe in ifactors(n)[2] do

%p e := [op(e),op(2,pe)] ;

%p end do:

%p e ;

%p end proc:

%p isCycSchGr := proc(n)

%p local om,nhalf ,pe;

%p om := A001221(n) ;

%p if om > 4 then

%p return false;

%p elif om = 4 then

%p # require 2*p*q*r

%p if type(n,'even') and type(n/2,'odd') then

%p nhalf := n/2 ;

%p # require nhalf =p*q*r in A007304

%p return isA007304(nhalf) ;

%p else

%p false;

%p end if;

%p elif om = 3 then

%p # require p*q*r or 2*p*q^k

%p if type(n,'even') and type(n/2,'odd') then

%p nhalf := n/2 ;

%p # require nhalf =p*q^k

%p pe := pexp(nhalf) ;

%p if nops(pe) =2 and 1 in convert(pe,set) then

%p true;

%p else

%p false ;

%p end if;

%p elif type(n,'odd') then

%p # require n =p*q*r

%p if isA007304(n) then

%p true;

%p else

%p false ;

%p end if;

%p else

%p false;

%p end if;

%p elif om = 2 then

%p # require p*q^k

%p pe := pexp(n) ;

%p if 1 in convert(pe,set) then

%p true;

%p else

%p false;

%p end if;

%p else

%p # p^k, k>=0

%p true ;

%p end if;

%p end proc:

%p for n from 1 to 3000 do

%p if not isCycSchGr(n) then

%p printf("%d,",n) ;

%p end if;

%p end do:

%Y Cf. A051270 (subsequence), A036785 (subsequence), A074969 (subsequence).

%K nonn,easy

%O 1,1

%A _R. J. Mathar_, Jan 07 2024