ISPR - Use Java to determine arbitrarily large probable primes
No License
Editor's Note: This file was a File Exchange Pick of the Week
ISPR - Rapidly determine whether an
arbitrarily large positive integer
is a probable prime.
USAGE: q = ispr(n)
q = ispn(n,1)
n = positive integer, either as a numeric or string datatype
q = 1 if n is prime, 0 if n is composite
1 = any second input will cause the
function to output a message describing
the result in plain language, including
(if n is probably prime) a statement
about the certainty with which n is
claimed to be prime.
Notes: Probable primes are also known as "industrial strength" primes because
of the exceedlingly high probability --
but not certainty -- of primality. This
function utilizes the Java class
"BigInteger" with its method
"isProbablePrime."
For small integers, you can use numeric
inputs; however, for abitrarily large
integers, you must input the number
as a string in order to avoid an
overflow. Note the overflow error in
the second to last example below.
Examples:
>>ispr(314159,1)
I believe that 314159 is prime, but
there is a 1 in 590295810358705650000
chance that I am mistaken.
>>ispr('338327950288419716939',1)
I believe that 338327950288419716939 is
prime, but there is a 1 in 664613997892457940000000000000000000
chance that I am mistaken.
>>ispr(338327950288419716939,1)
338327950288419680000 is definitely not
prime.
>> for i=1:1000;if ispr(i);fprintf('%i ',i);end;end;fprintf('\n')
Michael Kleder, September 2004
Cite As
Michael Kleder (2026). ISPR - Use Java to determine arbitrarily large probable primes (https://uk.mathworks.com/matlabcentral/fileexchange/5888-ispr-use-java-to-determine-arbitrarily-large-probable-primes), MATLAB Central File Exchange. Retrieved .
MATLAB Release Compatibility
Platform Compatibility
Windows macOS LinuxCategories
- Test and Measurement > Image Acquisition Toolbox > Image Data Acquisition >
- Image Processing and Computer Vision > Image Acquisition Toolbox > Image Data Acquisition >
Tags
Discover Live Editor
Create scripts with code, output, and formatted text in a single executable document.
| Version | Published | Release Notes | |
|---|---|---|---|
| 1.0.0.0 | Minor bug fix. Now works correctly for primes > 350 digits. |
