mersenneforum.org  

Go Back   mersenneforum.org > Prime Search Projects > Conjectures 'R Us

Reply
 
Thread Tools
Old 2020-07-17, 21:18   #1
sweety439
 
sweety439's Avatar
 
Nov 2016

24·157 Posts
Default Changes to srsieve2

Quote:
Originally Posted by gd_barnes View Post
This thread is for software downloads and instructions as well as a forum for any related questions on how to run software related to the effort.
hi,

Can someone remove srsieve divisible by 2 check? (see https://github.com/xayahrainie4793/m...master/srsieve), I want to prove the extended Sierpinski/Riesel problems (Finding and proving the smallest k such that (k*b^n+-1)/gcd(k+-1,b-1) (+ for Sierpinski, - for Riesel) is not prime for all integers n>=1), these Sierpinski/Riesel conjectures extended the CRUS Sierpinski/Riesel conjectures to the k such that gcd(k+-1,b-1) (+ for Sierpinski, - for Riesel) is not 1, since k*b^n+-1 is always divisible by gcd(k+-1,b-1), it is simply to take out this factor, however, I cannot use srsieve to sieve the case which k and b are both odd (e.g. it returns ERROR: 13*43^n-1: every term is divisible by 2" for R43 k=13), it can only sieve the case which at least one of k and b are even (e.g. sieve file for R36), can someone remove srsieve divisible by 2 check to let me sieve and reserve the odd Sierpinski/Riesel bases (e.g. S3, currently S3 has these k's remaining: 1187, 1801, 3007, 3047, 3307, 5321, 5743, 5893, 6427, 6569, 6575, 7927, 8161, 8227, 8467, 8609, 8863, 8987, 9263, 9449, see https://docs.google.com/document/d/e...UF8OgSUVsS/pub)?

Last fiddled with by Uncwilly on 2020-07-17 at 21:55 Reason: TRIM YOUR QUOTES
sweety439 is offline   Reply With Quote
Old 2020-07-17, 22:56   #2
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

10111100000102 Posts
Default

If the candidates are divisible by 2, then they are composite and srsieve will remove them. I see zero reason for srsieve to behave differently.
rogue is offline   Reply With Quote
Old 2020-07-18, 06:22   #3
gd_barnes
 
gd_barnes's Avatar
 
May 2007
Kansas; USA

22·13·197 Posts
Default

Quote:
Originally Posted by rogue View Post
If the candidates are divisible by 2, then they are composite and srsieve will remove them. I see zero reason for srsieve to behave differently.
I'm with Sweety on this one. (Surprise, surprise! ) You did not read his request carefully. Please reread it and consider a more nuanced response. His complaint is one that I had about srsieve when I was working on the same conjectures that he was about a year ago. They are some conjectures that are fairly interesting and have been previously worked on by several others long before him and me.

There is no reason for srsieve to immediately error out candidates that are divisible by 2 since it should automatically remove them anyway in the normal course of sieving. By automatically errorring them out such tests that he is referring to cannot be properly sieved.

It would be like having srsieve automatically erroring out candidates that are divisible by 3 before doing actual sieving on them. It is an uneccesary error check that prevents other kinds of sieving from being done.

Last fiddled with by gd_barnes on 2020-07-18 at 06:23
gd_barnes is online now   Reply With Quote
Old 2020-07-18, 17:23   #4
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

2×3×17×59 Posts
Default

For srsieve if one inputs multiple sequences to srsieve and at least one sequence has "all terms divisible by x", that it won't sieve the other sequences. I can see why that would be a problem.

Have you considered srsieve2? Chances are that it is faster than srsieve and I believe that one of its output formats is compatible with sr2sieve, which is faster than srsieve2 when using Legendre tables.
rogue is offline   Reply With Quote
Old 2020-07-20, 21:40   #5
gd_barnes
 
gd_barnes's Avatar
 
May 2007
Kansas; USA

280416 Posts
Default

Please change srsieve to remove the error check for divisibility by 2 and then force the regular sieve process to remove the terms divisible by 2 instead. Is that really difficult? It seems like a simple fix. I'm pretty sure I or others have requested this before and we seem to keep getting the run-around about it.

To be more specific below is what Sweety and I and others want to do when attempting to test a conjecture such as (13*43^n-1)/2 if the form is not found to have a smallish prime using simple trial factoring with PFGW.

1. Sieve using srsieve using the form 13*43^n-1 but with a starting sieve depth of 3 using the following command:

srsieve -G -p 3 -P 1e9 -n 25e3 -N 100e3 -m 1e9 "13*43^n-1"

This tells srsieve to only sieve the form for P=3 to 1e9. That way it does not remove the terms that are divisible by 2 (which would be all of them in this case).

2. Test with PFGW using a standard PFGW header of:
(ABC $a*43^$b-1)/2 // {number_primes,$a,1}
13 25007
13 25019
(etc.)

This allows us to both sieve and test the form (13*43^n-1)/2. Srsieve currently works for us if we have a form with a prime divisor other than 2 such as (13*46^n-1)/3. In that case we would just have it sieve the range of P=5 to 1e9 and there would be no error as there is in the case of (13*43^n-1)/2.

Does this make sense?

[ All of these are examples. They are not actual work done.]

If this cannot be done please let us know and we will not request it anymore. We would prefer not to have to run a separate program when standard srsieve will work for 99% of cases like this. Also please let us know how you would sieve the form (13*43^n-1)/2. That would be very helpful.

Last fiddled with by gd_barnes on 2020-07-20 at 21:51
gd_barnes is online now   Reply With Quote
Old 2020-07-20, 23:59   #6
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

2·3·17·59 Posts
Default

Originally the ask was to "remove the check". Now you are asking for software to sieve (k*b^n+c)/d. Although similar, they are not the same. I don't recall anyone asking for this feature before.

For now I have given you a workaround that can be used for d = 2 which is what the original ask was. Why isn't that acceptable? You mention that this forces you to use srsieve for some sequences and srsieve2 for others. Why not srsieve2 for all sequences?

AFAIAC, srsieve is deprecated. sr1sieve and sr2sieve are not. My intention is to add new features to srsieve2, not srsieve. If bugs are found in srsieve then I will certainly fix them, but I'm not inclined to add new features to it.
rogue is offline   Reply With Quote
Old 2020-07-21, 02:45   #7
gd_barnes
 
gd_barnes's Avatar
 
May 2007
Kansas; USA

22·13·197 Posts
Default

Quote:
Originally Posted by rogue View Post
Originally the ask was to "remove the check". Now you are asking for software to sieve (k*b^n+c)/d. Although similar, they are not the same. I don't recall anyone asking for this feature before.

For now I have given you a workaround that can be used for d = 2 which is what the original ask was. Why isn't that acceptable? You mention that this forces you to use srsieve for some sequences and srsieve2 for others. Why not srsieve2 for all sequences?

AFAIAC, srsieve is deprecated. sr1sieve and sr2sieve are not. My intention is to add new features to srsieve2, not srsieve. If bugs are found in srsieve then I will certainly fix them, but I'm not inclined to add new features to it.
Where is the workaround that you have stated? I do not see it. I must be dense. lol We do not want to have to input multiple sequences if we only want to sieve one of them. I don't understand.

Please provide a specific example of how we should sieve (13*51^n-1)/2 by sieving 13*51^n-1. Please state the program to use and the command to use. Assume I'm a newbie because I am when it comes to srsieve2.

No we've never asked for srsieve (or srsieve2) to sieve (k*b^n+c)/d. I was just showing an example of what we could sieve with srsieve if the error check for divisibility by 2 is removed. We are just asking for the error check for all candidates divisible by 2 to be removed and then be included in the regular sieving looping process of all other prime factors.

I have used srsieve2 a few times. I find it to be no faster than sr2sieve and find it somewhat more cumbersome to use. I don't care for the fact that the P-rate that it uses is the number of prime factors that it has searched in the last minute whereas the P-rate in srsieve is the P-range that it has searched in the last minute. IMHO the latter is much preferable. I still use srsieve/sr1sieve/sr2sieve for that reason.

Why are you suggesting that we use srsieve2 when you do not know if it will work for what we are asking?

Edit:
I just tried srsieve2 with the following command:
srsieve2 -p 3 -P 1e6 -n 25e3 -N 100e3 -s "13*51^n-1"

It errored out with:
All terms for sequence 13*51^n-1 are divisible by 2
Fatal Error: All sequences have been removed

So my question is: Why does it error out when I have not included p=2 in the the sieve range ? It should not do that. For the same reason that srsieve should not do that. Sieving 13*51^n-1 by not including the factor of 2 is our way of sieving (13*51^n-1)/2. Does that make sense?

Last fiddled with by gd_barnes on 2020-07-21 at 03:12
gd_barnes is online now   Reply With Quote
Old 2020-07-21, 12:47   #8
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

2·3·17·59 Posts
Default

Quote:
Originally Posted by gd_barnes View Post
Where is the workaround that you have stated? I do not see it. I must be dense. lol We do not want to have to input multiple sequences if we only want to sieve one of them. I don't understand.

Please provide a specific example of how we should sieve (13*51^n-1)/2 by sieving 13*51^n-1. Please state the program to use and the command to use. Assume I'm a newbie because I am when it comes to srsieve2.

No we've never asked for srsieve (or srsieve2) to sieve (k*b^n+c)/d. I was just showing an example of what we could sieve with srsieve if the error check for divisibility by 2 is removed. We are just asking for the error check for all candidates divisible by 2 to be removed and then be included in the regular sieving looping process of all other prime factors.

I have used srsieve2 a few times. I find it to be no faster than sr2sieve and find it somewhat more cumbersome to use. I don't care for the fact that the P-rate that it uses is the number of prime factors that it has searched in the last minute whereas the P-rate in srsieve is the P-range that it has searched in the last minute. IMHO the latter is much preferable. I still use srsieve/sr1sieve/sr2sieve for that reason.

Why are you suggesting that we use srsieve2 when you do not know if it will work for what we are asking?

Edit:
I just tried srsieve2 with the following command:
srsieve2 -p 3 -P 1e6 -n 25e3 -N 100e3 -s "13*51^n-1"

It errored out with:
All terms for sequence 13*51^n-1 are divisible by 2
Fatal Error: All sequences have been removed

So my question is: Why does it error out when I have not included p=2 in the the sieve range ? It should not do that. For the same reason that srsieve should not do that. Sieving 13*51^n-1 by not including the factor of 2 is our way of sieving (13*51^n-1)/2. Does that make sense?
For srsieve2 I see what you mean. The check for "divisibility by 2" is done before sieving is started.

I will change srsieve2 to sieve (k*b^n+c)/d for any d. That would allow srsieve2 to benefit other users as it will be able to sieve a few repunit sequences.

Regarding "p per second", the value it shows is rather useless. The factor rate and estimated completion time are far more important.

For srsieve I will change the current error condition to a warning (it is a warning in srsieve2), but cannot guarantee that starting with -p3 will not remove terms divisible by 2.
rogue is offline   Reply With Quote
Old 2020-07-24, 23:09   #9
gd_barnes
 
gd_barnes's Avatar
 
May 2007
Kansas; USA

1024410 Posts
Default

Quote:
Originally Posted by rogue View Post
For srsieve2 I see what you mean. The check for "divisibility by 2" is done before sieving is started.

I will change srsieve2 to sieve (k*b^n+c)/d for any d. That would allow srsieve2 to benefit other users as it will be able to sieve a few repunit sequences.

Regarding "p per second", the value it shows is rather useless. The factor rate and estimated completion time are far more important.

For srsieve I will change the current error condition to a warning (it is a warning in srsieve2), but cannot guarantee that starting with -p3 will not remove terms divisible by 2.

That would be great for srsieve2 Mark!

When you are done please post the executable here and I will test it as best as I can.

Last fiddled with by gd_barnes on 2020-07-24 at 23:09
gd_barnes is online now   Reply With Quote
Old 2020-07-25, 00:32   #10
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

10111100000102 Posts
Default

Quote:
Originally Posted by gd_barnes View Post
That would be great for srsieve2 Mark!

When you are done please post the executable here and I will test it as best as I can.
I appreciate your offer. I'll try to work on it this weekend.
rogue is offline   Reply With Quote
Old 2020-08-02, 15:35   #11
rogue
 
rogue's Avatar
 
"Mark"
Apr 2003
Between here and the

2·3·17·59 Posts
Default

Question. If k*b^n+c is not evenly divisible by d, should those terms removed prior to sieving?
rogue is offline   Reply With Quote
Reply

Thread Tools


All times are UTC. The time now is 11:19.

Mon Nov 30 11:19:28 UTC 2020 up 81 days, 8:30, 3 users, load averages: 1.32, 1.50, 1.55

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.

This forum has received and complied with 0 (zero) government requests for information.

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation.
A copy of the license is included in the FAQ.