login
A214850
3x+1 groups: irregular triangle read by rows: row n gives all the numbers p <= A075684(n)+1 such that {T(2n+1,k) /pZ} is a multiplicative finite group, where T(2n+1,k) is the reduced trajectory of the Collatz problem whose elements are all odd.
3
2, 4, 2, 4, 6, 2, 4, 6, 8, 12, 18, 2, 4, 8, 2, 4, 6, 2, 4, 6, 8, 12, 2, 4, 8, 2, 4, 6, 8, 12, 2, 4, 6, 12, 2, 4, 8, 10, 20, 22, 2, 4, 6, 8, 2, 4, 6, 12, 18, 2, 4, 8, 16, 2, 4, 6, 2, 4, 6, 8, 12, 16, 18, 24, 2, 4, 2, 4, 6, 2, 4, 6, 8, 12, 18, 2, 4, 8, 2, 4, 6
OFFSET
1,1
COMMENTS
We introduce the structure of a finite group in order to give a possible way to classify the Collatz trajectories.
We see that the study of the classification of the trajectories is dependent on the values p.
The principle of the algorithm is to compute all the products T(2n+1,i)/pZ * T(2n+1,j)/pZ and also the inverse of each element such that if x is in the group, then there exist x' in the group with x*x' = 1.
Rows of triangle:
{2, 4},
{2, 4, 6},
{2, 4, 6, 8, 12, 18},
{2, 4, 8},
{2, 4, 6},
{2, 4, 6, 8, 12},
{2, 4, 8},
{2, 4, 6, 8, 12}, ...
EXAMPLE
Row 18 gives 6 groups with p = {2, 4, 6, 8, 12, 18}. The Collatz trajectory T(37,k) = {37, 7, 11, 17, 13, 5, 1}, and if we choose, for example, p=18, we obtain G(37) = {T(37,k)/18Z} = {7, 11, 17, 13, 5, 1} which (as subset of Z/18Z) is a multiplicative group of order 6.
For example 5, or 11, generates the cyclic group:
5^1 == 5, 5^2 == 7, 5^3 == 17, 5^4 == 13, 5^5 == 11, 5^6 == 1 (mod 18).
Other subgroups are {1}, {1, 17} and {1, 7, 13}.
MAPLE
c:=0:
for n from 3 by 2 to 800 do:
x:=2:lst:={n}:lst1:={}:x := n:
for k from 1 to 120 while (x > 1) do:
a := 0:
if type(x, 'even') then
x := x/2:lst:=lst union {x}:a:=a+1:
else
x := 3*x+1 :lst:=lst union {x}:a:=a+1:
fi:
od:
n1:=nops(lst):
for u from 1 to n1 do:
if irem(lst[u], 2)=1 then
lst1:=lst1 union {lst[u]}:
else
fi:
od:
m1:= max( op(lst1)):n1:=nops(lst1):
for p from 2 by 2 to m1+1 do:
lst2:={}:
for q from 1 to n1 do:
lst2:=lst2 union {irem(lst1[q], p)}:
od:
lst3:={}:n2:=nops(lst2):kkk:=0:
for i from 1 to n2 do:jjj:=0:
for j from 1 to n2 do:
z:=irem(lst2[i]*lst2[j], p):lst3:=lst3 union{z}:
if z=1 then jjj:=1:else fi
od:
if jjj=0 then kkk:=1:else fi:
od:
n3:=nops(lst3):iii:=0:
for b from 1 to n3 while(iii=0 and n2=n3 and kkk=0)
do:
if lst2[b]<>lst3[b] then
iii:=1:else
fi:
od:
if iii=0 and n2=n3 and kkk=0 then c:=c+1:
printf ( "%d %d \n", c, p):
else
fi:
od:
x:=2:
od:
CROSSREFS
Sequence in context: A216621 A300448 A214781 * A236186 A143271 A267654
KEYWORD
nonn,tabf
AUTHOR
Michel Lagneau, Mar 08 2013
STATUS
approved