gives True if n is provably prime, and False otherwise.


  • To use , you first need to load the Primality Proving Package using Needs["PrimalityProving`"].
  • When ProvablePrimeQ[n] returns True, then n is prime based on the Pratt certificate of primality or the Atkin-Morain certificate of primality.
  • should not be used as a replacement for PrimeQ, as PrimeQ is several orders of magnitude faster. Instead, use to certify the results of PrimeQ when needed.
  • The following options can be given:
  • "SmallPrime"1050lower bound for using the Atkin-Morain test
    "Certificate"Falsewhether to print a certificate
    "PollardPTest"Automaticwhether to use the Pollard method
    "PollardRhoTest"Automaticwhether to use the Pollard method
    "TrialDivisionLimit"Automaticnumber of primes to use in trial division
    "PrimeQMessages"Falsewhether progress is to be monitored
New to Mathematica? Find your learning path »
Have a question? Ask support »