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

Theorem mersenne 15714
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 9412 . . . . . . 7  |-  2  e.  NN0
32numexp1 12989 . . . . . 6  |-  ( 2 ^ 1 )  =  2
4 df-2 9195 . . . . . 6  |-  2  =  ( 1  +  1 )
53, 4eqtri 2250 . . . . 5  |-  ( 2 ^ 1 )  =  ( 1  +  1 )
6 prmuz2 12696 . . . . . . . 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 9829 . . . . . . 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 8187 . . . . . . 7  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  e.  RR )
11 2re 9206 . . . . . . . . 9  |-  2  e.  RR
1211a1i 9 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  2  e.  RR )
13 2ap0 9229 . . . . . . . . 9  |-  2 #  0
1413a1i 9 . . . . . . . 8  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  2 #  0 )
1512, 14, 1reexpclzapd 10953 . . . . . . 7  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 2 ^ P
)  e.  RR )
1610, 10, 15ltaddsubd 8718 . . . . . 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 4121 . . . 4  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  ( 2 ^ 1 )  <  ( 2 ^ P ) )
19 1zzd 9499 . . . . 5  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  e.  ZZ )
20 1lt2 9306 . . . . . 6  |-  1  <  2
2120a1i 9 . . . . 5  |-  ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e.  Prime )  ->  1  <  2 )
2212, 19, 1, 21ltexp2d 15659 . . . 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 9828 . . 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 12675 . . . . . . . 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 9150 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  CC )
30 2nn 9298 . . . . . . . . . . 11  |-  2  e.  NN
31 elfzuz 10249 . . . . . . . . . . . . . 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 9793 . . . . . . . . . . . . 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 9448 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  NN0 )
36 nnexpcl 10807 . . . . . . . . . . 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 9594 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  ZZ )
39 peano2zm 9510 . . . . . . . . 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 9595 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  RR )
4241recnd 8201 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  e.  CC )
43 0red 8173 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  e.  RR )
44 1red 8187 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  e.  RR )
45 0lt1 8299 . . . . . . . . 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 9829 . . . . . . . . . . . 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 9499 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  1  e.  ZZ )
51 elfzelz 10253 . . . . . . . . . . . . 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 15659 . . . . . . . . . . 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 4122 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
1  +  1 )  <  ( 2 ^ k ) )
5737nnred 9149 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  RR )
5844, 44, 57ltaddsubd 8718 . . . . . . . . 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 8298 . . . . . . 7  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  <  ( ( 2 ^ k )  -  1 ) )
6141, 60gt0ap0d 8802 . . . . . 6  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 ) #  0 )
6229, 42, 61divcanap2d 8965 . . . . 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 9482 . . . . . . 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 9830 . . . . . 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 9150 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ k )  e.  CC )
69 ax-1cn 8118 . . . . . . . . . . 11  |-  1  e.  CC
70 subap0 8816 . . . . . . . . . . 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 9793 . . . . . . . . . . . . . 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 12350 . . . . . . . . . . . 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 9448 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( P  /  k )  e. 
NN0 )
8168, 72, 80geoserap 12061 . . . . . . . 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 8201 . . . . . . . . . . 11  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ P )  e.  CC )
84 negsubdi2 8431 . . . . . . . . . . 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 9150 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  P  e.  CC )
8734nncnd 9150 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k  e.  CC )
8834nnap0d 9182 . . . . . . . . . . . . . 14  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  k #  0 )
8986, 87, 88divcanap2d 8965 . . . . . . . . . . . . 13  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
k  x.  ( P  /  k ) )  =  P )
9089oveq2d 6029 . . . . . . . . . . . 12  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
2 ^ ( k  x.  ( P  / 
k ) ) )  =  ( 2 ^ P ) )
9149recnd 8201 . . . . . . . . . . . . 13  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  2  e.  CC )
9291, 80, 35expmuld 10931 . . . . . . . . . . . 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 6029 . . . . . . . . . 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 8431 . . . . . . . . . 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 6031 . . . . . . . 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 8978 . . . . . . . 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 9484 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  0  e.  ZZ )
10279nnzd 9594 . . . . . . . . . 10  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  ( P  /  k )  e.  ZZ )
103102, 50zsubcld 9600 . . . . . . . . 9  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( P  /  k
)  -  1 )  e.  ZZ )
104101, 103fzfigd 10686 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
0 ... ( ( P  /  k )  - 
1 ) )  e. 
Fin )
105 elfznn0 10342 . . . . . . . . 9  |-  ( n  e.  ( 0 ... ( ( P  / 
k )  -  1 ) )  ->  n  e.  NN0 )
106 zexpcl 10809 . . . . . . . . 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 11956 . . . . . . 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 8190 . . . . . . . 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 9500 . . . . . . . . . . . . . 14  |-  2  e.  ZZ
112 elfzm11 10319 . . . . . . . . . . . . . 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 15659 . . . . . . . . . 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 8730 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ k
)  -  1 )  <  ( ( 2 ^ P )  - 
1 ) )
121110, 120eqbrtrd 4108 . . . . . . 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 9149 . . . . . . . 8  |-  ( ( ( ( P  e.  ZZ  /\  ( ( 2 ^ P )  -  1 )  e. 
Prime )  /\  k  e.  ( 2 ... ( P  -  1 ) ) )  /\  k  ||  P )  ->  (
( 2 ^ P
)  -  1 )  e.  RR )
123 ltmuldiv 9047 . . . . . . . 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 9828 . . . . . 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 12688 . . . . 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 12683 . 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 4086   ` cfv 5324  (class class class)co 6013   CCcc 8023   RRcr 8024   0cc0 8025   1c1 8026    + caddc 8028    x. cmul 8030    < clt 8207    <_ cle 8208    - cmin 8343   -ucneg 8344   # cap 8754    / cdiv 8845   NNcn 9136   2c2 9187   NN0cn0 9395   ZZcz 9472   ZZ>=cuz 9748   ...cfz 10236   ^cexp 10793   sum_csu 11907    || cdvds 12341   Primecprime 12672
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 4202  ax-sep 4205  ax-nul 4213  ax-pow 4262  ax-pr 4297  ax-un 4528  ax-setind 4633  ax-iinf 4684  ax-cnex 8116  ax-resscn 8117  ax-1cn 8118  ax-1re 8119  ax-icn 8120  ax-addcl 8121  ax-addrcl 8122  ax-mulcl 8123  ax-mulrcl 8124  ax-addcom 8125  ax-mulcom 8126  ax-addass 8127  ax-mulass 8128  ax-distr 8129  ax-i2m1 8130  ax-0lt1 8131  ax-1rid 8132  ax-0id 8133  ax-rnegex 8134  ax-precex 8135  ax-cnre 8136  ax-pre-ltirr 8137  ax-pre-ltwlin 8138  ax-pre-lttrn 8139  ax-pre-apti 8140  ax-pre-ltadd 8141  ax-pre-mulgt0 8142  ax-pre-mulext 8143  ax-arch 8144  ax-caucvg 8145  ax-pre-suploc 8146  ax-addf 8147  ax-mulf 8148
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 2802  df-sbc 3030  df-csb 3126  df-dif 3200  df-un 3202  df-in 3204  df-ss 3211  df-nul 3493  df-if 3604  df-pw 3652  df-sn 3673  df-pr 3674  df-op 3676  df-uni 3892  df-int 3927  df-iun 3970  df-disj 4063  df-br 4087  df-opab 4149  df-mpt 4150  df-tr 4186  df-id 4388  df-po 4391  df-iso 4392  df-iord 4461  df-on 4463  df-ilim 4464  df-suc 4466  df-iom 4687  df-xp 4729  df-rel 4730  df-cnv 4731  df-co 4732  df-dm 4733  df-rn 4734  df-res 4735  df-ima 4736  df-iota 5284  df-fun 5326  df-fn 5327  df-f 5328  df-f1 5329  df-fo 5330  df-f1o 5331  df-fv 5332  df-isom 5333  df-riota 5966  df-ov 6016  df-oprab 6017  df-mpo 6018  df-of 6230  df-1st 6298  df-2nd 6299  df-recs 6466  df-irdg 6531  df-frec 6552  df-1o 6577  df-2o 6578  df-oadd 6581  df-er 6697  df-map 6814  df-pm 6815  df-en 6905  df-dom 6906  df-fin 6907  df-sup 7177  df-inf 7178  df-pnf 8209  df-mnf 8210  df-xr 8211  df-ltxr 8212  df-le 8213  df-sub 8345  df-neg 8346  df-reap 8748  df-ap 8755  df-div 8846  df-inn 9137  df-2 9195  df-3 9196  df-4 9197  df-n0 9396  df-z 9473  df-uz 9749  df-q 9847  df-rp 9882  df-xneg 10000  df-xadd 10001  df-ioo 10120  df-ico 10122  df-icc 10123  df-fz 10237  df-fzo 10371  df-seqfrec 10703  df-exp 10794  df-fac 10981  df-bc 11003  df-ihash 11031  df-shft 11369  df-cj 11396  df-re 11397  df-im 11398  df-rsqrt 11552  df-abs 11553  df-clim 11833  df-sumdc 11908  df-ef 12202  df-e 12203  df-dvds 12342  df-prm 12673  df-rest 13317  df-topgen 13336  df-psmet 14550  df-xmet 14551  df-met 14552  df-bl 14553  df-mopn 14554  df-top 14715  df-topon 14728  df-bases 14760  df-ntr 14813  df-cn 14905  df-cnp 14906  df-tx 14970  df-cncf 15288  df-limced 15373  df-dvap 15374  df-relog 15575  df-rpcxp 15576
This theorem is referenced by:  perfect1  15715  perfect  15718
  Copyright terms: Public domain W3C validator