This program computes 257885161-1, which is the biggest known
prime number (about 17 million digits !). For more information about
how it was found and who found it, look at the GIMPS Project .

I compiled it successfully with gcc with Linux. In order to
compile it, your C compiler must support the 64 bit long long
type. The running time is less than 2 minutes on a 2.33 GHz Core2 CPU.

In order to have a small and yet asymptotically efficient code, I
decided to do the computation of 2N-1 directly in base
10. The power involves repeated squarings and multiplications by
two. The squarings are implemented by doing fast convolutions using
a Number
Theoretic Transform.