View Single Post
Old 2020-07-28, 14:12   #574
EdH
 
EdH's Avatar
 
"Ed Hall"
Dec 2009
Adirondack Mtns

338410 Posts
Default

@Chris: I have stumbled onto a problem with the GitHub version. I turned off the merge detection to let a sequence run down to a prime and it broke on 81 (3^4). Here's an example using 33391084425, with "detect_merge = false"
Code:
$ ./aliqueit -i 0 33391084425 33391084425
Reading config file...
Precalcing primes for trial factoring...
Preloading mersenne primes for trial factoring...
seq = 33391084425
index = 0
value = 33391084425 (11 digits)
0 .t dri c11 = 33391084425 = 3 * 5^2 * 397 * 1121447 : No driver
1 .t dri c11 = 21954617271 = 3^3 * 23 * 499 * 70849 : Decreased!
2 .t dri c11 = 12053382729 = 3 * 4017794243 : Decreased!
. . .
21 . dri c3 = 231 = 3 * 7 * 11 : Decreased!
22 . dri c3 = 153 = 3^2 * 17 : Decreased!
23 . dri c2 = 81 = 1 * 3^4 : Decreased!

ERROR: factor not prime: 1
Here's the resulting .elf:
Code:
0 .     33391084425 = 3 * 5^2 * 397 * 1121447
1 .     21954617271 = 3^3 * 23 * 499 * 70849
2 .     12053382729 = 3 * 4017794243
. . .
21 .     231 = 3 * 7 * 11
22 .     153 = 3^2 * 17
23 .     81 = 1 * 3^4
Here's what the .elf should be:
Code:
0 .   33391084425 = 3 * 5^2 * 397 * 1121447
1 .   21954617271 = 3^3 * 23 * 499 * 70849
2 .   12053382729 = 3 * 4017794243
. . .
21 .   231 = 3 * 7 * 11
22 .   153 = 3^2 * 17
23 .   81 = 3^4
24 .   40 = 2^3 * 5
25 .   50 = 2 * 5^2
26 .   43 = 43
If run 81 as the sequence, it breaks later:
Code:
$ ./aliqueit -i 0 81 81
Reading config file...
Precalcing primes for trial factoring...
Preloading mersenne primes for trial factoring...
seq = 81
index = 0
value = 81 (2 digits)
0 .t dri c2 = 81 = 3^4 : No driver
1 .t dri c2 = 40 = 2^3 * 5 : Decreased!
2 .t dri c2 = 50 = 1 * 2 * 5^2 : Downdriver!

ERROR: factor not prime: 1
Note: This is from a clean d/l from GitHub. I made no edits to this source, which is why you can see the "t dri" extraneous characters.
EdH is offline   Reply With Quote