Whats the best software to calculate very large numbers?

clearwater304
Messages
88
Reaction score
0
For instance, the largest known prime number has nearly 13 million decimal digits. Would any normal computer be able to calculate this?
 
Physics news on Phys.org
I don't know what you mean by a "normal" computer. Obviously it took a computer to get this number.
 
I think you mean the Mersenne prime 2^43112609 -1. Mathematica running on my laptop calculated this number in under 2 minutes, so the answer to your question is yes.
 
Awsome. I know when I took java a few years ago a lot of software would only store numbers up to a certain number of digits.
 
Is there a way I can run mathematica remotely on their server. If I try to do a primality test on a very large number on my notebook it gives me a recursive error. I suppose this is due to the fact that it ran out of memory and I only have 4gb on my notebook.
 
Awsome. I know when I took java a few years ago a lot of software would only store numbers up to a certain number of digits

Most programming languages have limited size integer values because they just block off a certain (small) size of memory.

You can use java's BigInteger class to store numbers of arbitrarily large size (up to your machine's memory limit I guess)
 
clearwater304 said:
Is there a way I can run mathematica remotely on their server.

I don't know anything about these folks, but they seem to offer Mathematica service.

http://www.nimbisservices.com/catalog/cloud-services-mathematica
 
Last edited by a moderator:
Mathematica seems to be the way to go, now I just have to create a customized primality test so it doesn't take a year to prove.
 
What are you trying to do? Calculating a number like this is much, much faster than proving that it is prime. Encryption algorithms rely on the fact that multiplying two large primes to generate a large composite is much (much) faster than extracting these two primes from the resulting composite.
 
  • #10
Theres this prize given by the eff for calculating a prime with 1 billion digits. I want to develop a primality test to make the computing time more efficient.
 
  • #11
phyzguy said:
What are you trying to do? Calculating a number like this is much, much faster than proving that it is prime. Encryption algorithms rely on the fact that multiplying two large primes to generate a large composite is much (much) faster than extracting these two primes from the resulting composite.
I'm don't think that you meant this, but it should be reiterated that one does not ever need to find a factor of a number to prove that it's composite, even for extraordinarily large numbers.
 
  • #12
clearwater304 said:
Is there a way I can run mathematica remotely on their server. If I try to do a primality test on a very large number on my notebook it gives me a recursive error. I suppose this is due to the fact that it ran out of memory and I only have 4gb on my notebook.
Solving 10^13000000=2^x gives x~40000000, which means it will take about 40 million bits to represent the number, which would be 5 million bytes. Since most computers have on the order of billions of bytes (gigabytes) the memory isn't the problem. The problem is the computation.

clearwater304 said:
Mathematica seems to be the way to go, now I just have to create a customized primality test so it doesn't take a year to prove.
Good luck with that. You might want to look at some other the existing ones first. The AKS primality test is the best known primality test.

Feryll said:
I'm don't think that you meant this, but it should be reiterated that one does not ever need to find a factor of a number to prove that it's composite, even for extraordinarily large numbers.
You do it you want your algorithm to be anywhere near efficient. EDIT: Never mind, I was wrong. I was presuming you were referring to the Wilson test, but I just remembered the quadratic residue test, which is a very efficient way to eliminate a lot of composite numbers without finding a factor.

clearwater304 said:
For instance, the largest known prime number has nearly 13 million decimal digits. Would any normal computer be able to calculate this?
GMP, a C and C++ library, can handle arbitrarily large numbers and is very heavily optimized. So can Java's BigInteger, but I don't know how optimized it is.
 
Last edited:
Back
Top