Números primos de Mersenne e números perfeitos
Um número primo de Mersenne é um número primo de forma , onde o expoente primo de Mersenne
é também um número primo. Cada primo de Mersenne corresponde a um número perfeito par.
Gere uma lista de expoentes primos de Mersenne.
In[1]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_1.png)
mpe = Table[MersennePrimeExponent[n], {n, 1, 10}]
Out[1]=
![](assets.pt-br/mersenne-primes-and-perfect-numbers/O_1.png)
Construa os números primos de Mersenne correspondentes.
In[2]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_2.png)
mp = 2^mpe - 1
Out[2]=
![](assets.pt-br/mersenne-primes-and-perfect-numbers/O_2.png)
Construa os números perfeitos correspondentes.
In[3]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_3.png)
pn = 2^(mpe - 1) (2^mpe - 1)
Out[3]=
![](assets.pt-br/mersenne-primes-and-perfect-numbers/O_3.png)
In[4]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_4.png)
AllTrue[pn, PerfectNumberQ]
Out[4]=
![](assets.pt-br/mersenne-primes-and-perfect-numbers/O_4.png)
Visualize como é dispersa a distribuição de pequenos expoentes primos de Mersenne, destacando-os em vermelho na lista dos primeiros 225 números primos.
In[5]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_5.png)
primes = Replace[Prime@Range[225],
x_?MersennePrimeExponentQ :> Style[x, Red, Bold], 1];
In[6]:=
![Click for copyable input](assets.pt-br/mersenne-primes-and-perfect-numbers/In_6.png)
Multicolumn[primes, Alignment -> {Center, Center}, Spacings -> {1, 1},
Frame -> All, FrameStyle -> Directive[Orange, Dashing[Small]]]
Out[6]=
![](assets.pt-br/mersenne-primes-and-perfect-numbers/O_5.png)