ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  mersenne Unicode version

Theorem mersenne 15679
Description: A Mersenne prime is a prime number of the form  2 ^ P  - 
1. This theorem shows that the  P in this expression is necessarily also prime. (Contributed by Mario Carneiro, 17-May-2016.)
Assertion
Ref Expression
mersenne  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  P  e.  Prime )

Proof of Theorem mersenne
Dummy variables  k  n are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 simpl 109 . . 3  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  P  e.  ZZ )
2 2nn0 9394 . . . . . . 7  |-  2  e.  NN0
32numexp1 12954 . . . . . 6  |-  ( 2 ^ 1 )  =  2
4 df-2 9177 . . . . . 6  |-  2  =  ( 1  +  1 )
53, 4eqtri 2250 . . . . 5  |-  ( 2 ^ 1 )  =  ( 1  +  1 )
6 prmuz2 12661 . . . . . . . 8  |-  ( ( ( 2 ^ P
)  -  1 )  e.  Prime  ->  ( ( 2 ^ P )  -  1 )  e.  ( ZZ>= `  2 )
)
76adantl 277 . . . . . . 7  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( ( 2 ^ P )  -  1 )  e.  ( ZZ>= ` 
2 ) )
8 eluz2gt1 9805 . . . . . . 7  |-  ( ( ( 2 ^ P
)  -  1 )  e.  ( ZZ>= `  2
)  ->  1  <  ( ( 2 ^ P
)  -  1 ) )
97, 8syl 14 . . . . . 6  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  <  ( ( 2 ^ P )  -  1 ) )
10 1red 8169 . . . . . . 7  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  e.  RR )
11 2re 9188 . . . . . . . . 9  |-  2  e.  RR
1211a1i 9 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  2  e.  RR )
13 2ap0 9211 . . . . . . . . 9  |-  2 #  0
1413a1i 9 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  2 #  0 )
1512, 14, 1reexpclzapd 10928 . . . . . . 7  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 2 ^ P
)  e.  RR )
1610, 10, 15ltaddsubd 8700 . . . . . 6  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( ( 1  +  1 )  <  (
2 ^ P )  <->  1  <  ( ( 2 ^ P )  -  1 ) ) )
179, 16mpbird 167 . . . . 5  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 1  +  1 )  <  ( 2 ^ P ) )
185, 17eqbrtrid 4118 . . . 4  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 2 ^ 1 )  <  ( 2 ^ P ) )
19 1zzd 9481 . . . . 5  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  e.  ZZ )
20 1lt2 9288 . . . . . 6  |-  1  <  2
2120a1i 9 . . . . 5  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  <  2 )
2212, 19, 1, 21ltexp2d 15624 . . . 4  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 1  <  P  <->  ( 2 ^ 1 )  <  ( 2 ^ P ) ) )
2318, 22mpbird 167 . . 3  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  <  P )
24 eluz2b1 9804 . . 3  |-  ( P  e.  ( ZZ>= `  2
)  <->  ( P  e.  ZZ  /\  1  < 
P ) )
251, 23, 24sylanbrc 417 . 2  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  P  e.  ( ZZ>= ` 
2 ) )
26 simpllr 534 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  Prime )
27 prmnn 12640 . . . . . . . 8  |-  ( ( ( 2 ^ P
)  -  1 )  e.  Prime  ->  ( ( 2 ^ P )  -  1 )  e.  NN )
2826, 27syl 14 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  NN )
2928nncnd 9132 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  CC )
30 2nn 9280 . . . . . . . . . . 11  |-  2  e.  NN
31 elfzuz 10225 . . . . . . . . . . . . . 14  |-  ( k  e.  ( 2 ... ( P  -  1 ) )  ->  k  e.  ( ZZ>= `  2 )
)
3231ad2antlr 489 . . . . . . . . . . . . 13  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  ( ZZ>= `  2 )
)
33 eluz2nn 9769 . . . . . . . . . . . . 13  |-  ( k  e.  ( ZZ>= `  2
)  ->  k  e.  NN )
3432, 33syl 14 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  NN )
3534nnnn0d 9430 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  NN0 )
36 nnexpcl 10782 . . . . . . . . . . 11  |-  ( ( 2  e.  NN  /\  k  e.  NN0 )  -> 
( 2 ^ k
)  e.  NN )
3730, 35, 36sylancr 414 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  NN )
3837nnzd 9576 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  ZZ )
39 peano2zm 9492 . . . . . . . . 9  |-  ( ( 2 ^ k )  e.  ZZ  ->  (
( 2 ^ k
)  -  1 )  e.  ZZ )
4038, 39syl 14 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  ZZ )
4140zred 9577 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  RR )
4241recnd 8183 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  CC )
43 0red 8155 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  e.  RR )
44 1red 8169 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  e.  RR )
45 0lt1 8281 . . . . . . . . 9  |-  0  <  1
4645a1i 9 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  <  1 )
47 eluz2gt1 9805 . . . . . . . . . . . 12  |-  ( k  e.  ( ZZ>= `  2
)  ->  1  <  k )
4832, 47syl 14 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  <  k )
4911a1i 9 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  2  e.  RR )
50 1zzd 9481 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  e.  ZZ )
51 elfzelz 10229 . . . . . . . . . . . . 13  |-  ( k  e.  ( 2 ... ( P  -  1 ) )  ->  k  e.  ZZ )
5251ad2antlr 489 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  ZZ )
5320a1i 9 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  <  2 )
5449, 50, 52, 53ltexp2d 15624 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  <  k  <->  ( 2 ^ 1 )  < 
( 2 ^ k
) ) )
5548, 54mpbid 147 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ 1 )  <  ( 2 ^ k ) )
565, 55eqbrtrrid 4119 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  +  1 )  <  ( 2 ^ k ) )
5737nnred 9131 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  RR )
5844, 44, 57ltaddsubd 8700 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 1  +  1 )  <  ( 2 ^ k )  <->  1  <  ( ( 2 ^ k
)  -  1 ) ) )
5956, 58mpbid 147 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  <  ( ( 2 ^ k )  -  1 ) )
6043, 44, 41, 46, 59lttrd 8280 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  <  ( ( 2 ^ k )  -  1 ) )
6141, 60gt0ap0d 8784 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 ) #  0 )
6229, 42, 61divcanap2d 8947 . . . . 5  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( ( 2 ^ k )  -  1 )  x.  ( ( ( 2 ^ P
)  -  1 )  /  ( ( 2 ^ k )  - 
1 ) ) )  =  ( ( 2 ^ P )  - 
1 ) )
6362, 26eqeltrd 2306 . . . 4  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( ( 2 ^ k )  -  1 )  x.  ( ( ( 2 ^ P
)  -  1 )  /  ( ( 2 ^ k )  - 
1 ) ) )  e.  Prime )
64 elnnz 9464 . . . . . . 7  |-  ( ( ( 2 ^ k
)  -  1 )  e.  NN  <->  ( (
( 2 ^ k
)  -  1 )  e.  ZZ  /\  0  <  ( ( 2 ^ k )  -  1 ) ) )
6540, 60, 64sylanbrc 417 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  NN )
66 eluz2b2 9806 . . . . . 6  |-  ( ( ( 2 ^ k
)  -  1 )  e.  ( ZZ>= `  2
)  <->  ( ( ( 2 ^ k )  -  1 )  e.  NN  /\  1  < 
( ( 2 ^ k )  -  1 ) ) )
6765, 59, 66sylanbrc 417 . . . . 5  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  ( ZZ>= `  2
) )
6837nncnd 9132 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  CC )
69 ax-1cn 8100 . . . . . . . . . . 11  |-  1  e.  CC
70 subap0 8798 . . . . . . . . . . 11  |-  ( ( ( 2 ^ k
)  e.  CC  /\  1  e.  CC )  ->  ( ( ( 2 ^ k )  - 
1 ) #  0  <->  (
2 ^ k ) #  1 ) )
7168, 69, 70sylancl 413 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( ( 2 ^ k )  -  1 ) #  0  <->  ( 2 ^ k ) #  1 ) )
7261, 71mpbid 147 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k ) #  1 )
73 simpr 110 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  ||  P )
74 eluz2nn 9769 . . . . . . . . . . . . . 14  |-  ( P  e.  ( ZZ>= `  2
)  ->  P  e.  NN )
7525, 74syl 14 . . . . . . . . . . . . 13  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  P  e.  NN )
7675ad2antrr 488 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  P  e.  NN )
77 nndivdvds 12315 . . . . . . . . . . . 12  |-  ( ( P  e.  NN  /\  k  e.  NN )  ->  ( k  ||  P  <->  ( P  /  k )  e.  NN ) )
7876, 34, 77syl2anc 411 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
k  ||  P  <->  ( P  /  k )  e.  NN ) )
7973, 78mpbid 147 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( P  /  k )  e.  NN )
8079nnnn0d 9430 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( P  /  k )  e. 
NN0 )
8168, 72, 80geoserap 12026 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  sum_ n  e.  ( 0 ... (
( P  /  k
)  -  1 ) ) ( ( 2 ^ k ) ^
n )  =  ( ( 1  -  (
( 2 ^ k
) ^ ( P  /  k ) ) )  /  ( 1  -  ( 2 ^ k ) ) ) )
8215ad2antrr 488 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ P )  e.  RR )
8382recnd 8183 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ P )  e.  CC )
84 negsubdi2 8413 . . . . . . . . . . 11  |-  ( ( ( 2 ^ P
)  e.  CC  /\  1  e.  CC )  -> 
-u ( ( 2 ^ P )  - 
1 )  =  ( 1  -  ( 2 ^ P ) ) )
8583, 69, 84sylancl 413 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  -u (
( 2 ^ P
)  -  1 )  =  ( 1  -  ( 2 ^ P
) ) )
8676nncnd 9132 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  P  e.  CC )
8734nncnd 9132 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  CC )
8834nnap0d 9164 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k #  0 )
8986, 87, 88divcanap2d 8947 . . . . . . . . . . . . 13  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
k  x.  ( P  /  k ) )  =  P )
9089oveq2d 6023 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ ( k  x.  ( P  / 
k ) ) )  =  ( 2 ^ P ) )
9149recnd 8183 . . . . . . . . . . . . 13  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  2  e.  CC )
9291, 80, 35expmuld 10906 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ ( k  x.  ( P  / 
k ) ) )  =  ( ( 2 ^ k ) ^
( P  /  k
) ) )
9390, 92eqtr3d 2264 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ P )  =  ( ( 2 ^ k ) ^
( P  /  k
) ) )
9493oveq2d 6023 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  -  ( 2 ^ P ) )  =  ( 1  -  ( ( 2 ^ k ) ^ ( P  /  k ) ) ) )
9585, 94eqtrd 2262 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  -u (
( 2 ^ P
)  -  1 )  =  ( 1  -  ( ( 2 ^ k ) ^ ( P  /  k ) ) ) )
96 negsubdi2 8413 . . . . . . . . . 10  |-  ( ( ( 2 ^ k
)  e.  CC  /\  1  e.  CC )  -> 
-u ( ( 2 ^ k )  - 
1 )  =  ( 1  -  ( 2 ^ k ) ) )
9768, 69, 96sylancl 413 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  -u (
( 2 ^ k
)  -  1 )  =  ( 1  -  ( 2 ^ k
) ) )
9895, 97oveq12d 6025 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( -u ( ( 2 ^ P )  -  1 )  /  -u (
( 2 ^ k
)  -  1 ) )  =  ( ( 1  -  ( ( 2 ^ k ) ^ ( P  / 
k ) ) )  /  ( 1  -  ( 2 ^ k
) ) ) )
9929, 42, 61div2negapd 8960 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( -u ( ( 2 ^ P )  -  1 )  /  -u (
( 2 ^ k
)  -  1 ) )  =  ( ( ( 2 ^ P
)  -  1 )  /  ( ( 2 ^ k )  - 
1 ) ) )
10081, 98, 993eqtr2d 2268 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  sum_ n  e.  ( 0 ... (
( P  /  k
)  -  1 ) ) ( ( 2 ^ k ) ^
n )  =  ( ( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) ) )
101 0zd 9466 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  e.  ZZ )
10279nnzd 9576 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( P  /  k )  e.  ZZ )
103102, 50zsubcld 9582 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( P  /  k
)  -  1 )  e.  ZZ )
104101, 103fzfigd 10661 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
0 ... ( ( P  /  k )  - 
1 ) )  e. 
Fin )
105 elfznn0 10318 . . . . . . . . 9  |-  ( n  e.  ( 0 ... ( ( P  / 
k )  -  1 ) )  ->  n  e.  NN0 )
106 zexpcl 10784 . . . . . . . . 9  |-  ( ( ( 2 ^ k
)  e.  ZZ  /\  n  e.  NN0 )  -> 
( ( 2 ^ k ) ^ n
)  e.  ZZ )
10738, 105, 106syl2an 289 . . . . . . . 8  |-  ( ( ( ( ( P  e.  ZZ  /\  (
( 2 ^ P
)  -  1 )  e.  Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  /\  n  e.  ( 0 ... (
( P  /  k
)  -  1 ) ) )  ->  (
( 2 ^ k
) ^ n )  e.  ZZ )
108104, 107fsumzcl 11921 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  sum_ n  e.  ( 0 ... (
( P  /  k
)  -  1 ) ) ( ( 2 ^ k ) ^
n )  e.  ZZ )
109100, 108eqeltrrd 2307 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) )  e.  ZZ )
11042mullidd 8172 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  x.  ( ( 2 ^ k )  -  1 ) )  =  ( ( 2 ^ k )  - 
1 ) )
111 2z 9482 . . . . . . . . . . . . . 14  |-  2  e.  ZZ
112 elfzm11 10295 . . . . . . . . . . . . . 14  |-  ( ( 2  e.  ZZ  /\  P  e.  ZZ )  ->  ( k  e.  ( 2 ... ( P  -  1 ) )  <-> 
( k  e.  ZZ  /\  2  <_  k  /\  k  <  P ) ) )
113111, 1, 112sylancr 414 . . . . . . . . . . . . 13  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( k  e.  ( 2 ... ( P  -  1 ) )  <-> 
( k  e.  ZZ  /\  2  <_  k  /\  k  <  P ) ) )
114113biimpa 296 . . . . . . . . . . . 12  |-  ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  /\  k  e.  (
2 ... ( P  - 
1 ) ) )  ->  ( k  e.  ZZ  /\  2  <_ 
k  /\  k  <  P ) )
115114simp3d 1035 . . . . . . . . . . 11  |-  ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  /\  k  e.  (
2 ... ( P  - 
1 ) ) )  ->  k  <  P
)
116115adantr 276 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  <  P )
1171ad2antrr 488 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  P  e.  ZZ )
11849, 52, 117, 53ltexp2d 15624 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
k  <  P  <->  ( 2 ^ k )  < 
( 2 ^ P
) ) )
119116, 118mpbid 147 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  <  ( 2 ^ P ) )
12057, 82, 44, 119ltsub1dd 8712 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  <  ( ( 2 ^ P )  - 
1 ) )
121110, 120eqbrtrd 4105 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  x.  ( ( 2 ^ k )  -  1 ) )  <  ( ( 2 ^ P )  - 
1 ) )
12228nnred 9131 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  RR )
123 ltmuldiv 9029 . . . . . . . 8  |-  ( ( 1  e.  RR  /\  ( ( 2 ^ P )  -  1 )  e.  RR  /\  ( ( ( 2 ^ k )  - 
1 )  e.  RR  /\  0  <  ( ( 2 ^ k )  -  1 ) ) )  ->  ( (
1  x.  ( ( 2 ^ k )  -  1 ) )  <  ( ( 2 ^ P )  - 
1 )  <->  1  <  ( ( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) ) ) )
12444, 122, 41, 60, 123syl112anc 1275 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 1  x.  (
( 2 ^ k
)  -  1 ) )  <  ( ( 2 ^ P )  -  1 )  <->  1  <  ( ( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) ) ) )
125121, 124mpbid 147 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  <  ( ( ( 2 ^ P )  - 
1 )  /  (
( 2 ^ k
)  -  1 ) ) )
126 eluz2b1 9804 . . . . . 6  |-  ( ( ( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) )  e.  ( ZZ>= `  2
)  <->  ( ( ( ( 2 ^ P
)  -  1 )  /  ( ( 2 ^ k )  - 
1 ) )  e.  ZZ  /\  1  < 
( ( ( 2 ^ P )  - 
1 )  /  (
( 2 ^ k
)  -  1 ) ) ) )
127109, 125, 126sylanbrc 417 . . . . 5  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) )  e.  ( ZZ>= `  2
) )
128 nprm 12653 . . . . 5  |-  ( ( ( ( 2 ^ k )  -  1 )  e.  ( ZZ>= ` 
2 )  /\  (
( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) )  e.  ( ZZ>= `  2
) )  ->  -.  ( ( ( 2 ^ k )  - 
1 )  x.  (
( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) ) )  e.  Prime )
12967, 127, 128syl2anc 411 . . . 4  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  -.  ( ( ( 2 ^ k )  - 
1 )  x.  (
( ( 2 ^ P )  -  1 )  /  ( ( 2 ^ k )  -  1 ) ) )  e.  Prime )
13063, 129pm2.65da 665 . . 3  |-  ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  /\  k  e.  (
2 ... ( P  - 
1 ) ) )  ->  -.  k  ||  P )
131130ralrimiva 2603 . 2  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  A. k  e.  ( 2 ... ( P  -  1 ) )  -.  k  ||  P
)
132 isprm3 12648 . 2  |-  ( P  e.  Prime  <->  ( P  e.  ( ZZ>= `  2 )  /\  A. k  e.  ( 2 ... ( P  -  1 ) )  -.  k  ||  P
) )
13325, 131, 132sylanbrc 417 1  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  P  e.  Prime )
Colors of variables: wff set class
Syntax hints:   -. wn 3    -> wi 4    /\ wa 104    <-> wb 105    /\ w3a 1002    = wceq 1395    e. wcel 2200   A.wral 2508   class class class wbr 4083   ` cfv 5318  (class class class)co 6007   CCcc 8005   RRcr 8006   0cc0 8007   1c1 8008    + caddc 8010    x. cmul 8012    < clt 8189    <_ cle 8190    - cmin 8325   -ucneg 8326   # cap 8736    / cdiv 8827   NNcn 9118   2c2 9169   NN0cn0 9377   ZZcz 9454   ZZ>=cuz 9730   ...cfz 10212   ^cexp 10768   sum_csu 11872    || cdvds 12306   Primecprime 12637
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 617  ax-in2 618  ax-io 714  ax-5 1493  ax-7 1494  ax-gen 1495  ax-ie1 1539  ax-ie2 1540  ax-8 1550  ax-10 1551  ax-11 1552  ax-i12 1553  ax-bndl 1555  ax-4 1556  ax-17 1572  ax-i9 1576  ax-ial 1580  ax-i5r 1581  ax-13 2202  ax-14 2203  ax-ext 2211  ax-coll 4199  ax-sep 4202  ax-nul 4210  ax-pow 4258  ax-pr 4293  ax-un 4524  ax-setind 4629  ax-iinf 4680  ax-cnex 8098  ax-resscn 8099  ax-1cn 8100  ax-1re 8101  ax-icn 8102  ax-addcl 8103  ax-addrcl 8104  ax-mulcl 8105  ax-mulrcl 8106  ax-addcom 8107  ax-mulcom 8108  ax-addass 8109  ax-mulass 8110  ax-distr 8111  ax-i2m1 8112  ax-0lt1 8113  ax-1rid 8114  ax-0id 8115  ax-rnegex 8116  ax-precex 8117  ax-cnre 8118  ax-pre-ltirr 8119  ax-pre-ltwlin 8120  ax-pre-lttrn 8121  ax-pre-apti 8122  ax-pre-ltadd 8123  ax-pre-mulgt0 8124  ax-pre-mulext 8125  ax-arch 8126  ax-caucvg 8127  ax-pre-suploc 8128  ax-addf 8129  ax-mulf 8130
This theorem depends on definitions:  df-bi 117  df-stab 836  df-dc 840  df-3or 1003  df-3an 1004  df-tru 1398  df-fal 1401  df-nf 1507  df-sb 1809  df-eu 2080  df-mo 2081  df-clab 2216  df-cleq 2222  df-clel 2225  df-nfc 2361  df-ne 2401  df-nel 2496  df-ral 2513  df-rex 2514  df-reu 2515  df-rmo 2516  df-rab 2517  df-v 2801  df-sbc 3029  df-csb 3125  df-dif 3199  df-un 3201  df-in 3203  df-ss 3210  df-nul 3492  df-if 3603  df-pw 3651  df-sn 3672  df-pr 3673  df-op 3675  df-uni 3889  df-int 3924  df-iun 3967  df-disj 4060  df-br 4084  df-opab 4146  df-mpt 4147  df-tr 4183  df-id 4384  df-po 4387  df-iso 4388  df-iord 4457  df-on 4459  df-ilim 4460  df-suc 4462  df-iom 4683  df-xp 4725  df-rel 4726  df-cnv 4727  df-co 4728  df-dm 4729  df-rn 4730  df-res 4731  df-ima 4732  df-iota 5278  df-fun 5320  df-fn 5321  df-f 5322  df-f1 5323  df-fo 5324  df-f1o 5325  df-fv 5326  df-isom 5327  df-riota 5960  df-ov 6010  df-oprab 6011  df-mpo 6012  df-of 6224  df-1st 6292  df-2nd 6293  df-recs 6457  df-irdg 6522  df-frec 6543  df-1o 6568  df-2o 6569  df-oadd 6572  df-er 6688  df-map 6805  df-pm 6806  df-en 6896  df-dom 6897  df-fin 6898  df-sup 7159  df-inf 7160  df-pnf 8191  df-mnf 8192  df-xr 8193  df-ltxr 8194  df-le 8195  df-sub 8327  df-neg 8328  df-reap 8730  df-ap 8737  df-div 8828  df-inn 9119  df-2 9177  df-3 9178  df-4 9179  df-n0 9378  df-z 9455  df-uz 9731  df-q 9823  df-rp 9858  df-xneg 9976  df-xadd 9977  df-ioo 10096  df-ico 10098  df-icc 10099  df-fz 10213  df-fzo 10347  df-seqfrec 10678  df-exp 10769  df-fac 10956  df-bc 10978  df-ihash 11006  df-shft 11334  df-cj 11361  df-re 11362  df-im 11363  df-rsqrt 11517  df-abs 11518  df-clim 11798  df-sumdc 11873  df-ef 12167  df-e 12168  df-dvds 12307  df-prm 12638  df-rest 13282  df-topgen 13301  df-psmet 14515  df-xmet 14516  df-met 14517  df-bl 14518  df-mopn 14519  df-top 14680  df-topon 14693  df-bases 14725  df-ntr 14778  df-cn 14870  df-cnp 14871  df-tx 14935  df-cncf 15253  df-limced 15338  df-dvap 15339  df-relog 15540  df-rpcxp 15541
This theorem is referenced by:  perfect1  15680  perfect  15683
  Copyright terms: Public domain W3C validator