| Step |
Hyp |
Ref |
Expression |
| 1 |
|
olc |
|- ( ( Q mod 8 ) = 7 -> ( ( Q mod 8 ) = 1 \/ ( Q mod 8 ) = 7 ) ) |
| 2 |
|
ovex |
|- ( Q mod 8 ) e. _V |
| 3 |
|
elprg |
|- ( ( Q mod 8 ) e. _V -> ( ( Q mod 8 ) e. { 1 , 7 } <-> ( ( Q mod 8 ) = 1 \/ ( Q mod 8 ) = 7 ) ) ) |
| 4 |
2 3
|
mp1i |
|- ( ( Q mod 8 ) = 7 -> ( ( Q mod 8 ) e. { 1 , 7 } <-> ( ( Q mod 8 ) = 1 \/ ( Q mod 8 ) = 7 ) ) ) |
| 5 |
1 4
|
mpbird |
|- ( ( Q mod 8 ) = 7 -> ( Q mod 8 ) e. { 1 , 7 } ) |
| 6 |
|
2lgs |
|- ( Q e. Prime -> ( ( 2 /L Q ) = 1 <-> ( Q mod 8 ) e. { 1 , 7 } ) ) |
| 7 |
6
|
ad2antlr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( 2 /L Q ) = 1 <-> ( Q mod 8 ) e. { 1 , 7 } ) ) |
| 8 |
|
2z |
|- 2 e. ZZ |
| 9 |
|
simpr |
|- ( ( P e. Prime /\ Q e. Prime ) -> Q e. Prime ) |
| 10 |
9
|
adantr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> Q e. Prime ) |
| 11 |
|
2re |
|- 2 e. RR |
| 12 |
11
|
a1i |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> 2 e. RR ) |
| 13 |
|
2m1e1 |
|- ( 2 - 1 ) = 1 |
| 14 |
11
|
a1i |
|- ( P e. Prime -> 2 e. RR ) |
| 15 |
|
prmnn |
|- ( P e. Prime -> P e. NN ) |
| 16 |
15
|
nnred |
|- ( P e. Prime -> P e. RR ) |
| 17 |
|
1lt2 |
|- 1 < 2 |
| 18 |
17
|
a1i |
|- ( P e. Prime -> 1 < 2 ) |
| 19 |
|
prmgt1 |
|- ( P e. Prime -> 1 < P ) |
| 20 |
14 16 18 19
|
mulgt1d |
|- ( P e. Prime -> 1 < ( 2 x. P ) ) |
| 21 |
13 20
|
eqbrtrid |
|- ( P e. Prime -> ( 2 - 1 ) < ( 2 x. P ) ) |
| 22 |
|
1red |
|- ( P e. Prime -> 1 e. RR ) |
| 23 |
|
2nn |
|- 2 e. NN |
| 24 |
23
|
a1i |
|- ( P e. Prime -> 2 e. NN ) |
| 25 |
24 15
|
nnmulcld |
|- ( P e. Prime -> ( 2 x. P ) e. NN ) |
| 26 |
25
|
nnred |
|- ( P e. Prime -> ( 2 x. P ) e. RR ) |
| 27 |
14 22 26
|
ltsubaddd |
|- ( P e. Prime -> ( ( 2 - 1 ) < ( 2 x. P ) <-> 2 < ( ( 2 x. P ) + 1 ) ) ) |
| 28 |
21 27
|
mpbid |
|- ( P e. Prime -> 2 < ( ( 2 x. P ) + 1 ) ) |
| 29 |
28
|
ad2antrr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> 2 < ( ( 2 x. P ) + 1 ) ) |
| 30 |
|
breq2 |
|- ( Q = ( ( 2 x. P ) + 1 ) -> ( 2 < Q <-> 2 < ( ( 2 x. P ) + 1 ) ) ) |
| 31 |
30
|
adantl |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( 2 < Q <-> 2 < ( ( 2 x. P ) + 1 ) ) ) |
| 32 |
29 31
|
mpbird |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> 2 < Q ) |
| 33 |
12 32
|
gtned |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> Q =/= 2 ) |
| 34 |
|
eldifsn |
|- ( Q e. ( Prime \ { 2 } ) <-> ( Q e. Prime /\ Q =/= 2 ) ) |
| 35 |
10 33 34
|
sylanbrc |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> Q e. ( Prime \ { 2 } ) ) |
| 36 |
|
lgsqrmodndvds |
|- ( ( 2 e. ZZ /\ Q e. ( Prime \ { 2 } ) ) -> ( ( 2 /L Q ) = 1 -> E. m e. ZZ ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) ) ) |
| 37 |
8 35 36
|
sylancr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( 2 /L Q ) = 1 -> E. m e. ZZ ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) ) ) |
| 38 |
|
prmnn |
|- ( Q e. Prime -> Q e. NN ) |
| 39 |
38
|
nncnd |
|- ( Q e. Prime -> Q e. CC ) |
| 40 |
39
|
adantl |
|- ( ( P e. Prime /\ Q e. Prime ) -> Q e. CC ) |
| 41 |
|
1cnd |
|- ( ( P e. Prime /\ Q e. Prime ) -> 1 e. CC ) |
| 42 |
|
2cnd |
|- ( P e. Prime -> 2 e. CC ) |
| 43 |
15
|
nncnd |
|- ( P e. Prime -> P e. CC ) |
| 44 |
42 43
|
mulcld |
|- ( P e. Prime -> ( 2 x. P ) e. CC ) |
| 45 |
44
|
adantr |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( 2 x. P ) e. CC ) |
| 46 |
40 41 45
|
subadd2d |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( ( Q - 1 ) = ( 2 x. P ) <-> ( ( 2 x. P ) + 1 ) = Q ) ) |
| 47 |
|
prmz |
|- ( Q e. Prime -> Q e. ZZ ) |
| 48 |
|
peano2zm |
|- ( Q e. ZZ -> ( Q - 1 ) e. ZZ ) |
| 49 |
47 48
|
syl |
|- ( Q e. Prime -> ( Q - 1 ) e. ZZ ) |
| 50 |
49
|
zcnd |
|- ( Q e. Prime -> ( Q - 1 ) e. CC ) |
| 51 |
50
|
adantl |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( Q - 1 ) e. CC ) |
| 52 |
43
|
adantr |
|- ( ( P e. Prime /\ Q e. Prime ) -> P e. CC ) |
| 53 |
|
2cnne0 |
|- ( 2 e. CC /\ 2 =/= 0 ) |
| 54 |
53
|
a1i |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( 2 e. CC /\ 2 =/= 0 ) ) |
| 55 |
|
divmul2 |
|- ( ( ( Q - 1 ) e. CC /\ P e. CC /\ ( 2 e. CC /\ 2 =/= 0 ) ) -> ( ( ( Q - 1 ) / 2 ) = P <-> ( Q - 1 ) = ( 2 x. P ) ) ) |
| 56 |
51 52 54 55
|
syl3anc |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( ( ( Q - 1 ) / 2 ) = P <-> ( Q - 1 ) = ( 2 x. P ) ) ) |
| 57 |
|
eqcom |
|- ( Q = ( ( 2 x. P ) + 1 ) <-> ( ( 2 x. P ) + 1 ) = Q ) |
| 58 |
57
|
a1i |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( Q = ( ( 2 x. P ) + 1 ) <-> ( ( 2 x. P ) + 1 ) = Q ) ) |
| 59 |
46 56 58
|
3bitr4rd |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( Q = ( ( 2 x. P ) + 1 ) <-> ( ( Q - 1 ) / 2 ) = P ) ) |
| 60 |
59
|
biimpa |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q - 1 ) / 2 ) = P ) |
| 61 |
|
oveq2 |
|- ( ( ( Q - 1 ) / 2 ) = P -> ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) ) |
| 62 |
|
zsqcl |
|- ( m e. ZZ -> ( m ^ 2 ) e. ZZ ) |
| 63 |
62
|
ad2antlr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> ( m ^ 2 ) e. ZZ ) |
| 64 |
8
|
a1i |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> 2 e. ZZ ) |
| 65 |
|
oveq1 |
|- ( Q = ( ( 2 x. P ) + 1 ) -> ( Q - 1 ) = ( ( ( 2 x. P ) + 1 ) - 1 ) ) |
| 66 |
65
|
adantl |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( Q - 1 ) = ( ( ( 2 x. P ) + 1 ) - 1 ) ) |
| 67 |
66
|
oveq1d |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q - 1 ) / 2 ) = ( ( ( ( 2 x. P ) + 1 ) - 1 ) / 2 ) ) |
| 68 |
|
pncan1 |
|- ( ( 2 x. P ) e. CC -> ( ( ( 2 x. P ) + 1 ) - 1 ) = ( 2 x. P ) ) |
| 69 |
44 68
|
syl |
|- ( P e. Prime -> ( ( ( 2 x. P ) + 1 ) - 1 ) = ( 2 x. P ) ) |
| 70 |
69
|
oveq1d |
|- ( P e. Prime -> ( ( ( ( 2 x. P ) + 1 ) - 1 ) / 2 ) = ( ( 2 x. P ) / 2 ) ) |
| 71 |
|
2ne0 |
|- 2 =/= 0 |
| 72 |
71
|
a1i |
|- ( P e. Prime -> 2 =/= 0 ) |
| 73 |
43 42 72
|
divcan3d |
|- ( P e. Prime -> ( ( 2 x. P ) / 2 ) = P ) |
| 74 |
70 73
|
eqtrd |
|- ( P e. Prime -> ( ( ( ( 2 x. P ) + 1 ) - 1 ) / 2 ) = P ) |
| 75 |
74
|
ad2antrr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( ( ( 2 x. P ) + 1 ) - 1 ) / 2 ) = P ) |
| 76 |
67 75
|
eqtrd |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q - 1 ) / 2 ) = P ) |
| 77 |
15
|
nnnn0d |
|- ( P e. Prime -> P e. NN0 ) |
| 78 |
77
|
ad2antrr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> P e. NN0 ) |
| 79 |
76 78
|
eqeltrd |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q - 1 ) / 2 ) e. NN0 ) |
| 80 |
38
|
nnrpd |
|- ( Q e. Prime -> Q e. RR+ ) |
| 81 |
80
|
ad2antlr |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> Q e. RR+ ) |
| 82 |
79 81
|
jca |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( ( Q - 1 ) / 2 ) e. NN0 /\ Q e. RR+ ) ) |
| 83 |
82
|
ad2antrr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> ( ( ( Q - 1 ) / 2 ) e. NN0 /\ Q e. RR+ ) ) |
| 84 |
|
simpr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) |
| 85 |
|
modexp |
|- ( ( ( ( m ^ 2 ) e. ZZ /\ 2 e. ZZ ) /\ ( ( ( Q - 1 ) / 2 ) e. NN0 /\ Q e. RR+ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) ) |
| 86 |
63 64 83 84 85
|
syl211anc |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) ) |
| 87 |
86
|
ex |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) ) ) |
| 88 |
87
|
adantr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) ) ) |
| 89 |
|
2cnd |
|- ( Q e. Prime -> 2 e. CC ) |
| 90 |
71
|
a1i |
|- ( Q e. Prime -> 2 =/= 0 ) |
| 91 |
50 89 90
|
divcan2d |
|- ( Q e. Prime -> ( 2 x. ( ( Q - 1 ) / 2 ) ) = ( Q - 1 ) ) |
| 92 |
91
|
eqcomd |
|- ( Q e. Prime -> ( Q - 1 ) = ( 2 x. ( ( Q - 1 ) / 2 ) ) ) |
| 93 |
92
|
oveq2d |
|- ( Q e. Prime -> ( m ^ ( Q - 1 ) ) = ( m ^ ( 2 x. ( ( Q - 1 ) / 2 ) ) ) ) |
| 94 |
93
|
ad3antlr |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( m ^ ( Q - 1 ) ) = ( m ^ ( 2 x. ( ( Q - 1 ) / 2 ) ) ) ) |
| 95 |
|
zcn |
|- ( m e. ZZ -> m e. CC ) |
| 96 |
95
|
adantl |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> m e. CC ) |
| 97 |
79
|
adantr |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( Q - 1 ) / 2 ) e. NN0 ) |
| 98 |
|
2nn0 |
|- 2 e. NN0 |
| 99 |
98
|
a1i |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> 2 e. NN0 ) |
| 100 |
96 97 99
|
expmuld |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( m ^ ( 2 x. ( ( Q - 1 ) / 2 ) ) ) = ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) ) |
| 101 |
94 100
|
eqtr2d |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) = ( m ^ ( Q - 1 ) ) ) |
| 102 |
101
|
oveq1d |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( m ^ ( Q - 1 ) ) mod Q ) ) |
| 103 |
102
|
adantr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( m ^ ( Q - 1 ) ) mod Q ) ) |
| 104 |
|
vfermltl |
|- ( ( Q e. Prime /\ m e. ZZ /\ -. Q || m ) -> ( ( m ^ ( Q - 1 ) ) mod Q ) = 1 ) |
| 105 |
104
|
ad5ant245 |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( m ^ ( Q - 1 ) ) mod Q ) = 1 ) |
| 106 |
103 105
|
eqtrd |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = 1 ) |
| 107 |
|
oveq1 |
|- ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ P ) mod Q ) ) |
| 108 |
106 107
|
eqeqan12d |
|- ( ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) /\ ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) ) -> ( ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) <-> 1 = ( ( 2 ^ P ) mod Q ) ) ) |
| 109 |
|
id |
|- ( 1 = ( ( 2 ^ P ) mod Q ) -> 1 = ( ( 2 ^ P ) mod Q ) ) |
| 110 |
109
|
eqcomd |
|- ( 1 = ( ( 2 ^ P ) mod Q ) -> ( ( 2 ^ P ) mod Q ) = 1 ) |
| 111 |
38
|
nnred |
|- ( Q e. Prime -> Q e. RR ) |
| 112 |
|
prmgt1 |
|- ( Q e. Prime -> 1 < Q ) |
| 113 |
|
1mod |
|- ( ( Q e. RR /\ 1 < Q ) -> ( 1 mod Q ) = 1 ) |
| 114 |
111 112 113
|
syl2anc |
|- ( Q e. Prime -> ( 1 mod Q ) = 1 ) |
| 115 |
114
|
eqcomd |
|- ( Q e. Prime -> 1 = ( 1 mod Q ) ) |
| 116 |
115
|
ad3antlr |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> 1 = ( 1 mod Q ) ) |
| 117 |
110 116
|
sylan9eqr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> ( ( 2 ^ P ) mod Q ) = ( 1 mod Q ) ) |
| 118 |
38
|
ad4antlr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> Q e. NN ) |
| 119 |
|
zexpcl |
|- ( ( 2 e. ZZ /\ P e. NN0 ) -> ( 2 ^ P ) e. ZZ ) |
| 120 |
8 77 119
|
sylancr |
|- ( P e. Prime -> ( 2 ^ P ) e. ZZ ) |
| 121 |
120
|
ad4antr |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> ( 2 ^ P ) e. ZZ ) |
| 122 |
|
1zzd |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> 1 e. ZZ ) |
| 123 |
|
moddvds |
|- ( ( Q e. NN /\ ( 2 ^ P ) e. ZZ /\ 1 e. ZZ ) -> ( ( ( 2 ^ P ) mod Q ) = ( 1 mod Q ) <-> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 124 |
118 121 122 123
|
syl3anc |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> ( ( ( 2 ^ P ) mod Q ) = ( 1 mod Q ) <-> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 125 |
117 124
|
mpbid |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ 1 = ( ( 2 ^ P ) mod Q ) ) -> Q || ( ( 2 ^ P ) - 1 ) ) |
| 126 |
125
|
ex |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( 1 = ( ( 2 ^ P ) mod Q ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 127 |
126
|
ad2antrr |
|- ( ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) /\ ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) ) -> ( 1 = ( ( 2 ^ P ) mod Q ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 128 |
108 127
|
sylbid |
|- ( ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) /\ ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) ) -> ( ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 129 |
128
|
ex |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> ( ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 130 |
129
|
com23 |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( ( ( m ^ 2 ) ^ ( ( Q - 1 ) / 2 ) ) mod Q ) = ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) mod Q ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 131 |
88 130
|
syld |
|- ( ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) /\ -. Q || m ) -> ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 132 |
131
|
ex |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( -. Q || m -> ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 133 |
132
|
com23 |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) -> ( -. Q || m -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 134 |
133
|
impd |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 135 |
134
|
com23 |
|- ( ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) /\ m e. ZZ ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 136 |
135
|
ex |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( m e. ZZ -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 137 |
136
|
com23 |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( 2 ^ ( ( Q - 1 ) / 2 ) ) = ( 2 ^ P ) -> ( m e. ZZ -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 138 |
61 137
|
syl5 |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( ( Q - 1 ) / 2 ) = P -> ( m e. ZZ -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 139 |
60 138
|
mpd |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( m e. ZZ -> ( ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 140 |
139
|
rexlimdv |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( E. m e. ZZ ( ( ( m ^ 2 ) mod Q ) = ( 2 mod Q ) /\ -. Q || m ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 141 |
37 140
|
syld |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( 2 /L Q ) = 1 -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 142 |
7 141
|
sylbird |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q mod 8 ) e. { 1 , 7 } -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 143 |
5 142
|
syl5 |
|- ( ( ( P e. Prime /\ Q e. Prime ) /\ Q = ( ( 2 x. P ) + 1 ) ) -> ( ( Q mod 8 ) = 7 -> Q || ( ( 2 ^ P ) - 1 ) ) ) |
| 144 |
143
|
ex |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( Q = ( ( 2 x. P ) + 1 ) -> ( ( Q mod 8 ) = 7 -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 145 |
144
|
com23 |
|- ( ( P e. Prime /\ Q e. Prime ) -> ( ( Q mod 8 ) = 7 -> ( Q = ( ( 2 x. P ) + 1 ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) |
| 146 |
145
|
ex |
|- ( P e. Prime -> ( Q e. Prime -> ( ( Q mod 8 ) = 7 -> ( Q = ( ( 2 x. P ) + 1 ) -> Q || ( ( 2 ^ P ) - 1 ) ) ) ) ) |
| 147 |
146
|
3imp2 |
|- ( ( P e. Prime /\ ( Q e. Prime /\ ( Q mod 8 ) = 7 /\ Q = ( ( 2 x. P ) + 1 ) ) ) -> Q || ( ( 2 ^ P ) - 1 ) ) |