Eric Hahn writes:

   I'm looking for program(s) capable of trial-factoring 
   prime exponent Mersenne numbers (using 2kp+1) meeting
   the following requirements:

   1) Capable of trial-factoring any exponent > 1 
      (at least to some considerably large number,
       say 1 trillion?)

If your C compiler supports a 64 bit integer type, the mers package
factorers mersfacgmp and mersfaclip can use that for the exponent,
allowing exponents to about 2^64/24 (about 768 quadrillion, ~7e17).
The '/24' can be reduced to '/2' by using a lower number of sieve
passes.  If you don't have a 64 bit integer type, then you're limited
to 2^32/24 or so (about 178 million).  See setup.h for the #define's
of BIG_LONG.

   As I recall, Brian [Beesley] mentioned something once
   about having a program that could test an exponent
   of an arbitrary size...  Brian??

The mersfac* code could be modified to allow arbitrary exponents
without a lot of work, but it wouldn't be trivial to do either.  I do
intend on doing it someday, however, to support the factoring of the
M(M(p))'s, as the sieving of trial factors in mmtrial is not as good
as that in mersfac*.

   2) Capable of testing a factor of any size.
      (even over the 2^76 limit of Prime95).

Mersfacgmp and mersfaclip use the FSF's libgmp and A. Lenstra's
freeLIP libraries, respectively, for the trial factors.

   3) Capable of trial-factoring a range of k's.
      (example: from k=1000 to k=2500)

As Alexander Kruppa noted, this is not supported directly, but could
be done fairly easily with bc.  And it could be added to mersfac*
directly without a lot of effort; see rw.c where it reads the command
line and the input file(s), especially the -m flag.  The -a flag is
probably also of interest; without it, mersfac* will stop when it
finds a factor rather than looking for all the factors in a range.

The simplest way to do it with bc would be to create 'G' (gap) lines
like:

M( <exp> )G: <start> <stop>

where '<exp>' is the exponent and '<start>' and '<stop>' are the first
and last trial factors to test.

In any case, part of the output will be 'J' (join) lines, that show
exactly what range of trial factors were actually tested; please
include them in any output of mersfac* that you send to me.

                                              Will

http://www.garlic.com/~wedgingt/mersenne.html
                                mers.tar.gz
                                mers.tgz
                                mers.zip
`
_________________________________________________________________
Unsubscribe & list info -- http://www.scruz.net/~luke/signup.htm
Mersenne Prime FAQ      -- http://www.tasam.com/~lrwiman/FAQ-mers

Reply via email to