Results 1 to 40 of 386

Thread: P-1 factorer

Threaded View

Previous Post Previous Post   Next Post Next Post
  1. #11
    NEW SBFACTOR v0.8

    this version has the features I was talking about adding, namely:

    -Working optimal bound picker
    -SoB.dat decoder
    -Ablility to scan lowresults.txt/results.txt for known factors

    The usage for the optimal-bound/SoB.dat execution is:

    sbfactor.exe SoB.dat lowresults.txt results.txt <n low> <n high> -x <how far factored> <double check?>

    so if I wanted to P-1 factor all unfactored numbers between n=4000000 and n=4000100, I'd enter:

    sbfactor.exe SoB.dat lowresults.txt results.txt 4000000 4000100 -x 45 0

    here's a kinda tricky part the 45 there means that the numbers in that range have been sieved up to 2^45 = 35T. that's not exactly true but it will produce more accurate bounds than 44 since the majority of p < 35T is sieved.

    the final 0 just means that the number is completely untested. if you wanted to try factoring a range of numbers around n=3M, you would want to set that to 1 to signify that the value of a factor is less since it will only prevent a double check and not a new test.

    To make this REALLY easy to use, I've included a batch file that you only needs the bounds of a range of n that you want to test. This means you just download the new version, unzip it and type:

    run 4010000 4010100

    wait for it to finish, open up fact.txt and submit. another great thing is that even though there is no master file that tracks progress, the cache files will prevent retesting of numbers if you reboot your system or quit the program. like SB, the most you could lose would be 10 minutes. so just add another batch file to the directory that calls run.bat and add it to your startup folder and you could have your very own P-1 factoring system.

    the new download comes packaged with SoB.dat, lowresults.txt, and results.txt so it is much larger than the last versions. It is the original dat file so if you want to factor ranges less than 3M, use a different dat file.

    be warned though, the optimal bound setter will return B1=0 for numbers around n=510k. It looks at the likelihood that a factor will be found and immediately realizes that just testing the number is faster. it uses the same multiplication routines that SB does for squaring numbers so it doesn't need to even know how fast your computer is. it's pretty nice.

    n=1M will also immediatly quit if you indicate there's already a test done for it (which you should). it starts returning non-zero B1 values around n=1.7M. For more reasonably sized tests around n=4M it returns things in the neighborhood of B1=80000, B2=440000. i'll post the code it's using for bounds setting as an attachment here so that people can examine it before we decide that it is what we want for "official" testing of different ranges. once we agree on the fine points of the bounder, it wouldn't be inconcievable for people to simply reserve small ranges of n (for all k) where they will let the factorer run with optimal bounds. the new system is pretty easy to use compared to manually editing batch files. it will get easier too.

    one last thing I want to mention. the program now returns "success values" to help you estimate how may factors it will find. here's an example:

    Code:
    run 4100000 4105000
    
    sbfactor.exe SoB.dat lowresults.txt results.txt 4100000 4105000 -x 45 0
    SBFactor v0.8
    P-1 and ECM factoring for number of the form k*2^n+1.
    Adapted from GIMPS v23.4 by George Woltman and Louis Helm
    Finished parsing SoB.dat
    218 numbers between 4100000 < n < 4105000
    Searching for known factors in lowresults.txt...Done.
    Searching for known factors in results.txt...Done.
    Removed 22 numbers using the factor files
    Testing 196 numbers between 4100000 < n < 4105000
    Expected number of factors for entire range: 4.173580
    B1=80000 B2=440000 Success=0.021294 Squarings=200766
    P-1 on 4847*2^4100151+1 with B1=80000, B2=440000
    initializing test
    sieve finished
    So it expects that if I test all 196 unfactored numbers in that range to the optimally chosen levels, I should find about 4 factors. The expected number of factors is simply the sum of the success value of all 196 tests which are individually printed before each test starts.

    Let me know how the new version works and what you think of the optimal bound setter.

    http://www-personal.engin.umich.edu/...sbfactor08.zip

    -Louie

    PS - I am actually doing the "run 4100000 4105000" range for those looking to avoid duplication. thanx.
    Attached Files Attached Files
    Last edited by jjjjL; 06-16-2003 at 08:23 PM.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •