Maple 14 has isprime command which testing whether number is prime or not. It's allowed to write expressions as input data so we may write the next command :
isprime(2^(3^43-5)-1);
but I get the following error when trying to run a test :
Error, numeric exception: overflow
So my question is how to avoid this overflow error ? Should I change default stack size and if it's so how to do that on win 7 ultimate ?
Since 3^43-5 is composite, then so is 2^(3^43-5)-1. See the wikipedia page on Mersenne primes. And you can get this result quickly in Maple. So if that's all you wanted, then you're done.
> isprime( 3^43-5 );
false
Now, suppose that you had a prime p of comparable size to 3^43. Let's say, the very next prime higher than that.
nextprime( 3^43-5 );
328256967394537077679
numtheory[mersenne]( nextprime( 3^43-5 ) );
FAIL
Ok, so that's too unfortunate.
Try applying isprime
to 2^(10^6+3)-1. (Due to normal evaluation rules of maple procedures, isprime
gets the expanded argument, so has no chance to see the special form and do the cheaper test against only 10^6+3. That's what numtheory[mersenne]
is for.) You'll wait a while. Now imagine how long it would take isprime
to handle a number about 10^11 times as large, which is about what you'd have if you used 2^nextprime(3^43-5)-1
.