Search for Primitive Trinomials - Checks and Errors Detected

It is conceivable that an undetected hardware or software problem caused us to miss a primitive or "almost primitive" trinomial. To be sure that this is not the case, someone should perform our computations again, using an independently-written program, and compare the results obtained with our log files. Although we have confidence in our software, hardware errors are possible during long computations, see for example the review of Nicely's computation of twin primes and Brun's constant.

On 8 October 2003 we completed a verification of the results for degree 3021377 by rerunning our program irred on different machines with (in some cases) different sieving limits. No errors were found. The number of "x", "y" and "i" cases was reduced from 109243 to 105830 because of higher sieving limits.

We checked a subset of the results for degrees 3021377 and 6972593, using Victor Shoup's NTL package in addition to our own program irred.

For degree 3021377, we have checked all cases where irred found a factor of degree d < 32 by sieving. In all cases a factor of the expected degree d was found by NTL. For d < 24 we also verified that there is no factor of smaller degree. No errors were found. For d = 24 we verified all 4482 cases in the log file and found 151 additional cases that had not previously been detected because the sieving limit was too low (in these cases a full irreducibility test had shown that the trinomial was reducible). Consequently the number of "x", "y" and "i" cases was reduced from 105830 to 105679. After additional sieving the number of "x", "y" and "i" cases has been further reduced, to 98165.

Since early 2007 we have been doing an independent verification of our results, using a new program factor which finds a factor of minimal degree whenever the trinomial is reducible. The program factor is much more efficient than irred.

On 23 March 2007 we completed the verification for degree 3021377 using factor. We have now found a factor of minimal degree in all cases where the trinomial is reducible. See the extended log file for details.

On 30 April 2007 we completed the verification for degree 6972593 using factor. We have now found a factor of minimal degree in all cases where the trinomial is reducible. See the extended log file for details.

Early in the checking process, four errors were found in the original log file for degree 6972593. The erroneous results can not be duplicated. They were probably caused by undetected I/O errors or other hardware errors on old Pentium II workstations (no longer in use). The errors do not change our results concerning primitive trinomials. Details of the log file errors are as follows:

6972593 2209961 xa461877a should be 6972593 2209961 x6d0a7cbe
(detected using irred; 6972593 2209961 50 is also correct).

6972593 2210949 x41899f7e should be 6972593 2210949 xcd27dc7c
(detected using irred; 6972593 2210949 28 is also correct).

6972593 2221947 21 should be 6972593 2221947 xcdffb748
(detected using NTL; 6972593 2221947 89 is also correct).

6972593 2250941 22 should be 6972593 2250941 xefca346a
(detected using NTL; 6972593 2250941 460 is also correct).

These errors have been corrected in the log files currently available on the web.

Paul Zimmermann's program check-ntl to check the log files produced by irred using the NTL package is available here. A later version to check extended log files is available here.

R. P. Brent (in collaboration with Samuli Larvala and Paul Zimmermann); last revised 10 April 2008.

Return to Richard Brent's index page