Metamath Proof Explorer


Theorem mersenne

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)

Ref Expression
Assertion mersenne P2P1P

Proof

Step Hyp Ref Expression
1 simpl P2P1P
2 2nn0 20
3 2 numexp1 21=2
4 df-2 2=1+1
5 3 4 eqtri 21=1+1
6 prmuz2 2P12P12
7 6 adantl P2P12P12
8 eluz2gt1 2P121<2P1
9 7 8 syl P2P11<2P1
10 1red P2P11
11 2re 2
12 11 a1i P2P12
13 2ne0 20
14 13 a1i P2P120
15 12 14 1 reexpclzd P2P12P
16 10 10 15 ltaddsubd P2P11+1<2P1<2P1
17 9 16 mpbird P2P11+1<2P
18 5 17 eqbrtrid P2P121<2P
19 1zzd P2P11
20 1lt2 1<2
21 20 a1i P2P11<2
22 12 19 1 21 ltexp2d P2P11<P21<2P
23 18 22 mpbird P2P11<P
24 eluz2b1 P2P1<P
25 1 23 24 sylanbrc P2P1P2
26 simpllr P2P1k2P1kP2P1
27 prmnn 2P12P1
28 26 27 syl P2P1k2P1kP2P1
29 28 nncnd P2P1k2P1kP2P1
30 2nn 2
31 elfzuz k2P1k2
32 31 ad2antlr P2P1k2P1kPk2
33 eluz2nn k2k
34 32 33 syl P2P1k2P1kPk
35 34 nnnn0d P2P1k2P1kPk0
36 nnexpcl 2k02k
37 30 35 36 sylancr P2P1k2P1kP2k
38 37 nnzd P2P1k2P1kP2k
39 peano2zm 2k2k1
40 38 39 syl P2P1k2P1kP2k1
41 40 zred P2P1k2P1kP2k1
42 41 recnd P2P1k2P1kP2k1
43 0red P2P1k2P1kP0
44 1red P2P1k2P1kP1
45 0lt1 0<1
46 45 a1i P2P1k2P1kP0<1
47 eluz2gt1 k21<k
48 32 47 syl P2P1k2P1kP1<k
49 11 a1i P2P1k2P1kP2
50 1zzd P2P1k2P1kP1
51 elfzelz k2P1k
52 51 ad2antlr P2P1k2P1kPk
53 20 a1i P2P1k2P1kP1<2
54 49 50 52 53 ltexp2d P2P1k2P1kP1<k21<2k
55 48 54 mpbid P2P1k2P1kP21<2k
56 5 55 eqbrtrrid P2P1k2P1kP1+1<2k
57 37 nnred P2P1k2P1kP2k
58 44 44 57 ltaddsubd P2P1k2P1kP1+1<2k1<2k1
59 56 58 mpbid P2P1k2P1kP1<2k1
60 43 44 41 46 59 lttrd P2P1k2P1kP0<2k1
61 elnnz 2k12k10<2k1
62 40 60 61 sylanbrc P2P1k2P1kP2k1
63 62 nnne0d P2P1k2P1kP2k10
64 29 42 63 divcan2d P2P1k2P1kP2k12P12k1=2P1
65 64 26 eqeltrd P2P1k2P1kP2k12P12k1
66 eluz2b2 2k122k11<2k1
67 62 59 66 sylanbrc P2P1k2P1kP2k12
68 37 nncnd P2P1k2P1kP2k
69 ax-1cn 1
70 subeq0 2k12k1=02k=1
71 68 69 70 sylancl P2P1k2P1kP2k1=02k=1
72 71 necon3bid P2P1k2P1kP2k102k1
73 63 72 mpbid P2P1k2P1kP2k1
74 simpr P2P1k2P1kPkP
75 eluz2nn P2P
76 25 75 syl P2P1P
77 76 ad2antrr P2P1k2P1kPP
78 nndivdvds PkkPPk
79 77 34 78 syl2anc P2P1k2P1kPkPPk
80 74 79 mpbid P2P1k2P1kPPk
81 80 nnnn0d P2P1k2P1kPPk0
82 68 73 81 geoser P2P1k2P1kPn=0Pk12kn=12kPk12k
83 15 ad2antrr P2P1k2P1kP2P
84 83 recnd P2P1k2P1kP2P
85 negsubdi2 2P12P1=12P
86 84 69 85 sylancl P2P1k2P1kP2P1=12P
87 77 nncnd P2P1k2P1kPP
88 34 nncnd P2P1k2P1kPk
89 34 nnne0d P2P1k2P1kPk0
90 87 88 89 divcan2d P2P1k2P1kPkPk=P
91 90 oveq2d P2P1k2P1kP2kPk=2P
92 49 recnd P2P1k2P1kP2
93 92 81 35 expmuld P2P1k2P1kP2kPk=2kPk
94 91 93 eqtr3d P2P1k2P1kP2P=2kPk
95 94 oveq2d P2P1k2P1kP12P=12kPk
96 86 95 eqtrd P2P1k2P1kP2P1=12kPk
97 negsubdi2 2k12k1=12k
98 68 69 97 sylancl P2P1k2P1kP2k1=12k
99 96 98 oveq12d P2P1k2P1kP2P12k1=12kPk12k
100 29 42 63 div2negd P2P1k2P1kP2P12k1=2P12k1
101 82 99 100 3eqtr2d P2P1k2P1kPn=0Pk12kn=2P12k1
102 fzfid P2P1k2P1kP0Pk1Fin
103 elfznn0 n0Pk1n0
104 zexpcl 2kn02kn
105 38 103 104 syl2an P2P1k2P1kPn0Pk12kn
106 102 105 fsumzcl P2P1k2P1kPn=0Pk12kn
107 101 106 eqeltrrd P2P1k2P1kP2P12k1
108 42 mullidd P2P1k2P1kP12k1=2k1
109 2z 2
110 elfzm11 2Pk2P1k2kk<P
111 109 1 110 sylancr P2P1k2P1k2kk<P
112 111 biimpa P2P1k2P1k2kk<P
113 112 simp3d P2P1k2P1k<P
114 113 adantr P2P1k2P1kPk<P
115 1 ad2antrr P2P1k2P1kPP
116 49 52 115 53 ltexp2d P2P1k2P1kPk<P2k<2P
117 114 116 mpbid P2P1k2P1kP2k<2P
118 57 83 44 117 ltsub1dd P2P1k2P1kP2k1<2P1
119 108 118 eqbrtrd P2P1k2P1kP12k1<2P1
120 28 nnred P2P1k2P1kP2P1
121 ltmuldiv 12P12k10<2k112k1<2P11<2P12k1
122 44 120 41 60 121 syl112anc P2P1k2P1kP12k1<2P11<2P12k1
123 119 122 mpbid P2P1k2P1kP1<2P12k1
124 eluz2b1 2P12k122P12k11<2P12k1
125 107 123 124 sylanbrc P2P1k2P1kP2P12k12
126 nprm 2k122P12k12¬2k12P12k1
127 67 125 126 syl2anc P2P1k2P1kP¬2k12P12k1
128 65 127 pm2.65da P2P1k2P1¬kP
129 128 ralrimiva P2P1k2P1¬kP
130 isprm3 PP2k2P1¬kP
131 25 129 130 sylanbrc P2P1P