Determine whether the number n is prime or not, with three possible answers:
n is prime,
n is probably prime (without beeing certain),
n is composite.
1  isprime(n, reps = 40)

n 
integer number, to be tested. 
reps 
integer number of primality testing repeats. 
This function does some trial divisions, then some MillerRabin
probabilistic primary tests. reps
controls how many such tests are
done, 5 to 10 is already a resonable number. More will reduce the chances
of a composite being returned as “probably prime”.
0 
n is not prime 
1 
n is probably prime 
2 
n is prime 
Antoine Lucas
The GNU MP Library, see http://gmplib.org
nextprime
, factorize
.
Note that for “small” n, which means something like
n < 10'000'000, nonprobabilistic methods (such as
factorize()
) are fast enough. For example,
primes
in package sfsmisc.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26  isprime(210)
isprime(71)
# All primes numbers from 1 to 100
t < isprime(1:99)
(1:99)[t > 0]
table(isprime(1:10000))# 0 and 2 : surely prime or not prime
primes < function(n) {
## all primes <= n
stopifnot(length(n) == 1, n <= 1e7) # be reasonable
p < c(2L, as.integer(seq(3, n, by=2)))
p[isprime(p) > 0]
}
## quite quickly, but for these small numbers
## still slower than e.g., sfsmisc::primes()
system.time(p100k < primes(100000))
## The first couple of Mersenne primes:
p.exp < primes(1000)
Mers < as.bigz(2) ^ p.exp  1
isp.M < sapply(seq_along(Mers), function(i) isprime(Mers[i], reps=256))
cbind(p.exp, isp.M)[isp.M > 0,]
Mers[isp.M > 0]

Questions? Problems? Suggestions? Tweet to @rdrrHQ or email at ian@mutexlabs.com.
All documentation is copyright its authors; we didn't write any of that.