On Saturday 22 October 2005 10:34, Peter Owen wrote: > come up with a factor this morning for the number that had given all the > incorrect factor messages. Unfortunately I had reported this result to > the server before I realised what had happened. > > M30740051 has a factor: 11175258286831664177 > > In the circumstances can the result that there is a factor be relied > upon? Is there a simple way of checking this result? > Several years ago I wrote a piece of code which was intended to be incorporated in the PrimeNet server to verify reported factors. So the server should be checking factors anyway, and not permitting false factors to enter the database.
The "simple" way to check if X is a divisor of 2^p-1 is to calculate 2^p modulo X - the result should obviously be 1. This can be done in the order of log p (to base 2) steps. As X is not very large each step is pretty fast; the code I wrote - though deliberately very different from the highly optimised code used in prime95/mprime - is capable of checking many thousands of factors per second i.e. much faster than results could be submitted to PrimeNet for checking. The reasons the code is different were (a) requirement for PrimeNet code to be in pure high-level language for reasons of portability, (b) requirement to handle large factors generated by P-1, ECM, etc, (c) take advantage of the presentation to PrimeNet being in decimal rather than binary notation, (d) make possible detection of systematic errors in reporting factors "found" due to possible program bugs. Though the false factor found should not be logged in the database, manual action may be required to restore the exponent to the list awaiting LL testing. Regards Brian Beesley _______________________________________________ Prime mailing list [email protected] http://hogranch.com/mailman/listinfo/prime
