MersennePrimeExponentQ
Details
- MersennePrimeExponentQ is typically used to test whether an integer is a Mersenne prime exponent.
- A positive integer n is a Mersenne prime exponent if the Mersenne number
is prime. - MersennePrimeExponentQ[n] returns False unless n is manifestly a Mersenne prime exponent.
Examples
open all close allBasic Examples (2)
Scope (3)
MersennePrimeExponentQ works over integers:
MersennePrimeExponentQ[5]Negative integers are not Mersenne prime exponents:
MersennePrimeExponentQ[-5]Noninteger numbers are not Mersenne prime exponents:
MersennePrimeExponentQ[13.5]Applications (8)
Basic Applications (3)
Highlight Mersenne prime exponents:
Multicolumn[If[MersennePrimeExponentQ[#], Style[#, Red, Bold], #]& /@ Range[100], 10, ...]Generate random Mersenne prime exponents:
randomMersennePrimeExp[n_, m_ : 1] := Table[MersennePrimeExponent[RandomInteger[{1, n}]], m];randomMersennePrimeExp[5, 4]AllTrue[%, MersennePrimeExponentQ]MersennePrimeExponentQ[23209]BarChart[KeySort[Counts[IntegerDigits[2 ^ 23209 - 1]]], ChartLabels -> Automatic]Special Sequences (2)
Recognize Mersenne numbers, numbers of the form
:
mersenneQ[n_] := EvenQ[n + 1] && PrimePowerQ[n + 1]Select[Range[100], mersenneQ]The number
is a Mersenne number;
is not:
mersenneQ[2147483647]mersenneQ[524285]Recognize Gaussian Mersenne primes, prime numbers n such that
is a Gaussian prime:
gaussianMersennePrimeQ[n_] := PrimeQ[(1 + I) ^ n - 1, GaussianIntegers -> True];Select[Range[1000], gaussianMersennePrimeQ]Number Theory (3)
A trinomial whose order is a Mersenne prime exponent is primitive modulo
if and only if it is irreducible:
MersennePrimeExponentQ[89]p = x ^ 89 + x ^ 38 + 1;PrimitivePolynomialQ[p, 2]IrreduciblePolynomialQ[p, Modulus -> 2]If p is a Mersenne prime exponent, then
is a perfect number:
MersennePrimeExponentQ[5]PerfectNumberQ[2 ^ (5 - 1)(2 ^ 5 - 1)]Every even perfect number has the form
, where p is a Mersenne prime exponent:
PerfectNumberQ[496]IntegerExponent[496, 2]Check that in the representation above p is 5:
2 ^ (5 - 1)(2 ^ 5 - 1)MersennePrimeExponentQ[5]Properties & Relations (10)
Mersenne prime exponents are prime numbers:
Table[Element[MersennePrimeExponent[n], Primes], {n, 10}]Composite numbers cannot be MersennePrimeExponents:
CompositeQ[12]MersennePrimeExponentQ[12]The only even Mersenne prime exponent is
:
MersennePrimeExponentQ[2]MersennePrimeExponent gives the ![]()
Mersenne prime exponent:
MersennePrimeExponent[4]MersennePrimeExponentQ[%]
is a Mersenne prime, where p is a Mersenne prime exponent:
MersennePrimeExponentQ[5]PrimeQ[2 ^ 5 - 1]If p is a Mersenne prime exponent, then
is a perfect number:
MersennePrimeExponentQ[7]PerfectNumberQ[2 ^ (7 - 1)(2 ^ 7 - 1)]Every even perfect number has the form
, where p is a Mersenne prime exponent:
PerfectNumberQ[496]IntegerExponent[496, 2]Check that in the representation above p is 5:
2 ^ (5 - 1)(2 ^ 5 - 1)MersennePrimeExponentQ[5]Triangular numbers of Mersenne primes are perfect numbers:
mersennePrime[n_] := 2 ^ MersennePrimeExponent[n] - 1;AllTrue[PolygonalNumber[mersennePrime /@ Range[40]], PerfectNumberQ]Hexagonal numbers related to Mersenne prime exponents are perfect numbers:
powertwo[n_] := 2 ^ (MersennePrimeExponent[n] - 1);AllTrue[PolygonalNumber[6, powertwo /@ Range[40]], PerfectNumberQ]Find Mersenne prime exponents:
FindInstance[(2 ^ q - 1) == p && 0 < q < p < 100, {q, p}, Primes]MersennePrimeExponentQ[5]Possible Issues (2)
Expressions that represent Mersenne prime exponents but do not evaluate explicitly will give False:
x = Log[8] / Log[2];
MersennePrimeExponentQ[x]It is necessary to use symbolic simplification first:
MersennePrimeExponentQ[FullSimplify[x]]As of this version of the Wolfram Language, only 50 Mersenne prime exponents have definite ranking:
TimeConstrained[MersennePrimeExponent[51], 10]Two more Mersenne prime exponents are known, but their ranking is still unknown:
mpe = {82589933, 136279841};
AllTrue[mpe, # > MersennePrimeExponent[50]&]AllTrue[mpe, MersennePrimeExponentQ]Related Guides
History
Text
Wolfram Research (2016), MersennePrimeExponentQ, Wolfram Language function, https://reference.wolfram.com/language/ref/MersennePrimeExponentQ.html.
CMS
Wolfram Language. 2016. "MersennePrimeExponentQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/MersennePrimeExponentQ.html.
APA
Wolfram Language. (2016). MersennePrimeExponentQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/MersennePrimeExponentQ.html
BibTeX
@misc{reference.wolfram_2026_mersenneprimeexponentq, author="Wolfram Research", title="{MersennePrimeExponentQ}", year="2016", howpublished="\url{https://reference.wolfram.com/language/ref/MersennePrimeExponentQ.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_mersenneprimeexponentq, organization={Wolfram Research}, title={MersennePrimeExponentQ}, year={2016}, url={https://reference.wolfram.com/language/ref/MersennePrimeExponentQ.html}, note=[Accessed: 12-June-2026]}