Description: Lemma for 4001prm . Calculate a power mod. In decimal, we calculate 2 ^ 1 0 0 0 = 2 ^ 8 0 0 x. 2 ^ 2 0 0 == 2 3 1 1 x. 9 0 2 = 5 2 1 N + 1 and finally 2 ^ ( N - 1 ) = ( 2 ^ 1 0 0 0 ) ^ 4 == 1 ^ 4 = 1 . (Contributed by Mario Carneiro, 3-Mar-2014) (Revised by Mario Carneiro, 20-Apr-2015) (Proof shortened by AV, 16-Sep-2021)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | 4001prm.1 | |- N = ; ; ; 4 0 0 1 |
|
| Assertion | 4001lem3 | |- ( ( 2 ^ ( N - 1 ) ) mod N ) = ( 1 mod N ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | 4001prm.1 | |- N = ; ; ; 4 0 0 1 |
|
| 2 | 4nn0 | |- 4 e. NN0 |
|
| 3 | 0nn0 | |- 0 e. NN0 |
|
| 4 | 2 3 | deccl | |- ; 4 0 e. NN0 |
| 5 | 4 3 | deccl | |- ; ; 4 0 0 e. NN0 |
| 6 | 1nn | |- 1 e. NN |
|
| 7 | 5 6 | decnncl | |- ; ; ; 4 0 0 1 e. NN |
| 8 | 1 7 | eqeltri | |- N e. NN |
| 9 | 2nn | |- 2 e. NN |
|
| 10 | 2nn0 | |- 2 e. NN0 |
|
| 11 | 10 3 | deccl | |- ; 2 0 e. NN0 |
| 12 | 11 3 | deccl | |- ; ; 2 0 0 e. NN0 |
| 13 | 12 3 | deccl | |- ; ; ; 2 0 0 0 e. NN0 |
| 14 | 0z | |- 0 e. ZZ |
|
| 15 | 1nn0 | |- 1 e. NN0 |
|
| 16 | 10nn0 | |- ; 1 0 e. NN0 |
|
| 17 | 16 3 | deccl | |- ; ; 1 0 0 e. NN0 |
| 18 | 17 3 | deccl | |- ; ; ; 1 0 0 0 e. NN0 |
| 19 | 8nn0 | |- 8 e. NN0 |
|
| 20 | 19 3 | deccl | |- ; 8 0 e. NN0 |
| 21 | 20 3 | deccl | |- ; ; 8 0 0 e. NN0 |
| 22 | 5nn0 | |- 5 e. NN0 |
|
| 23 | 22 10 | deccl | |- ; 5 2 e. NN0 |
| 24 | 23 15 | deccl | |- ; ; 5 2 1 e. NN0 |
| 25 | 24 | nn0zi | |- ; ; 5 2 1 e. ZZ |
| 26 | 3nn0 | |- 3 e. NN0 |
|
| 27 | 10 26 | deccl | |- ; 2 3 e. NN0 |
| 28 | 27 15 | deccl | |- ; ; 2 3 1 e. NN0 |
| 29 | 28 15 | deccl | |- ; ; ; 2 3 1 1 e. NN0 |
| 30 | 9nn0 | |- 9 e. NN0 |
|
| 31 | 30 3 | deccl | |- ; 9 0 e. NN0 |
| 32 | 31 10 | deccl | |- ; ; 9 0 2 e. NN0 |
| 33 | 1 | 4001lem2 | |- ( ( 2 ^ ; ; 8 0 0 ) mod N ) = ( ; ; ; 2 3 1 1 mod N ) |
| 34 | 1 | 4001lem1 | |- ( ( 2 ^ ; ; 2 0 0 ) mod N ) = ( ; ; 9 0 2 mod N ) |
| 35 | eqid | |- ; ; 8 0 0 = ; ; 8 0 0 |
|
| 36 | eqid | |- ; ; 2 0 0 = ; ; 2 0 0 |
|
| 37 | eqid | |- ; 8 0 = ; 8 0 |
|
| 38 | eqid | |- ; 2 0 = ; 2 0 |
|
| 39 | 8p2e10 | |- ( 8 + 2 ) = ; 1 0 |
|
| 40 | 00id | |- ( 0 + 0 ) = 0 |
|
| 41 | 19 3 10 3 37 38 39 40 | decadd | |- ( ; 8 0 + ; 2 0 ) = ; ; 1 0 0 |
| 42 | 20 3 11 3 35 36 41 40 | decadd | |- ( ; ; 8 0 0 + ; ; 2 0 0 ) = ; ; ; 1 0 0 0 |
| 43 | 15 | dec0h | |- 1 = ; 0 1 |
| 44 | eqid | |- ; ; 4 0 0 = ; ; 4 0 0 |
|
| 45 | 23 | nn0cni | |- ; 5 2 e. CC |
| 46 | 45 | addlidi | |- ( 0 + ; 5 2 ) = ; 5 2 |
| 47 | eqid | |- ; 4 0 = ; 4 0 |
|
| 48 | 5cn | |- 5 e. CC |
|
| 49 | 48 | addridi | |- ( 5 + 0 ) = 5 |
| 50 | 22 | dec0h | |- 5 = ; 0 5 |
| 51 | 49 50 | eqtri | |- ( 5 + 0 ) = ; 0 5 |
| 52 | 40 3 | eqeltri | |- ( 0 + 0 ) e. NN0 |
| 53 | eqid | |- ; ; 5 2 1 = ; ; 5 2 1 |
|
| 54 | eqid | |- ; 5 2 = ; 5 2 |
|
| 55 | 5t4e20 | |- ( 5 x. 4 ) = ; 2 0 |
|
| 56 | 2t4e8 | |- ( 2 x. 4 ) = 8 |
|
| 57 | 2 22 10 54 55 56 | decmul1 | |- ( ; 5 2 x. 4 ) = ; ; 2 0 8 |
| 58 | 4cn | |- 4 e. CC |
|
| 59 | 58 | mullidi | |- ( 1 x. 4 ) = 4 |
| 60 | 59 40 | oveq12i | |- ( ( 1 x. 4 ) + ( 0 + 0 ) ) = ( 4 + 0 ) |
| 61 | 58 | addridi | |- ( 4 + 0 ) = 4 |
| 62 | 60 61 | eqtri | |- ( ( 1 x. 4 ) + ( 0 + 0 ) ) = 4 |
| 63 | 23 15 52 53 2 57 62 | decrmanc | |- ( ( ; ; 5 2 1 x. 4 ) + ( 0 + 0 ) ) = ; ; ; 2 0 8 4 |
| 64 | 24 | nn0cni | |- ; ; 5 2 1 e. CC |
| 65 | 64 | mul01i | |- ( ; ; 5 2 1 x. 0 ) = 0 |
| 66 | 65 | oveq1i | |- ( ( ; ; 5 2 1 x. 0 ) + 5 ) = ( 0 + 5 ) |
| 67 | 48 | addlidi | |- ( 0 + 5 ) = 5 |
| 68 | 66 67 50 | 3eqtri | |- ( ( ; ; 5 2 1 x. 0 ) + 5 ) = ; 0 5 |
| 69 | 2 3 3 22 47 51 24 22 3 63 68 | decma2c | |- ( ( ; ; 5 2 1 x. ; 4 0 ) + ( 5 + 0 ) ) = ; ; ; ; 2 0 8 4 5 |
| 70 | 65 | oveq1i | |- ( ( ; ; 5 2 1 x. 0 ) + 2 ) = ( 0 + 2 ) |
| 71 | 2cn | |- 2 e. CC |
|
| 72 | 71 | addlidi | |- ( 0 + 2 ) = 2 |
| 73 | 10 | dec0h | |- 2 = ; 0 2 |
| 74 | 70 72 73 | 3eqtri | |- ( ( ; ; 5 2 1 x. 0 ) + 2 ) = ; 0 2 |
| 75 | 4 3 22 10 44 46 24 10 3 69 74 | decma2c | |- ( ( ; ; 5 2 1 x. ; ; 4 0 0 ) + ( 0 + ; 5 2 ) ) = ; ; ; ; ; 2 0 8 4 5 2 |
| 76 | 45 | mulridi | |- ( ; 5 2 x. 1 ) = ; 5 2 |
| 77 | ax-1cn | |- 1 e. CC |
|
| 78 | 77 | mullidi | |- ( 1 x. 1 ) = 1 |
| 79 | 78 | oveq1i | |- ( ( 1 x. 1 ) + 1 ) = ( 1 + 1 ) |
| 80 | 1p1e2 | |- ( 1 + 1 ) = 2 |
|
| 81 | 79 80 | eqtri | |- ( ( 1 x. 1 ) + 1 ) = 2 |
| 82 | 23 15 15 53 15 76 81 | decrmanc | |- ( ( ; ; 5 2 1 x. 1 ) + 1 ) = ; ; 5 2 2 |
| 83 | 5 15 3 15 1 43 24 10 23 75 82 | decma2c | |- ( ( ; ; 5 2 1 x. N ) + 1 ) = ; ; ; ; ; ; 2 0 8 4 5 2 2 |
| 84 | eqid | |- ; ; 9 0 2 = ; ; 9 0 2 |
|
| 85 | 6nn0 | |- 6 e. NN0 |
|
| 86 | 2 85 | deccl | |- ; 4 6 e. NN0 |
| 87 | 86 10 | deccl | |- ; ; 4 6 2 e. NN0 |
| 88 | eqid | |- ; 9 0 = ; 9 0 |
|
| 89 | eqid | |- ; ; 4 6 2 = ; ; 4 6 2 |
|
| 90 | eqid | |- ; ; ; 2 3 1 1 = ; ; ; 2 3 1 1 |
|
| 91 | 86 | nn0cni | |- ; 4 6 e. CC |
| 92 | 91 | addridi | |- ( ; 4 6 + 0 ) = ; 4 6 |
| 93 | 4p1e5 | |- ( 4 + 1 ) = 5 |
|
| 94 | 93 22 | eqeltri | |- ( 4 + 1 ) e. NN0 |
| 95 | eqid | |- ; ; 2 3 1 = ; ; 2 3 1 |
|
| 96 | eqid | |- ; 2 3 = ; 2 3 |
|
| 97 | 9cn | |- 9 e. CC |
|
| 98 | 9t2e18 | |- ( 9 x. 2 ) = ; 1 8 |
|
| 99 | 97 71 98 | mulcomli | |- ( 2 x. 9 ) = ; 1 8 |
| 100 | 15 19 10 99 80 39 | decaddci2 | |- ( ( 2 x. 9 ) + 2 ) = ; 2 0 |
| 101 | 7nn0 | |- 7 e. NN0 |
|
| 102 | 7p1e8 | |- ( 7 + 1 ) = 8 |
|
| 103 | 3cn | |- 3 e. CC |
|
| 104 | 9t3e27 | |- ( 9 x. 3 ) = ; 2 7 |
|
| 105 | 97 103 104 | mulcomli | |- ( 3 x. 9 ) = ; 2 7 |
| 106 | 10 101 102 105 | decsuc | |- ( ( 3 x. 9 ) + 1 ) = ; 2 8 |
| 107 | 10 26 15 96 30 19 10 100 106 | decrmac | |- ( ( ; 2 3 x. 9 ) + 1 ) = ; ; 2 0 8 |
| 108 | 97 | mullidi | |- ( 1 x. 9 ) = 9 |
| 109 | 108 93 | oveq12i | |- ( ( 1 x. 9 ) + ( 4 + 1 ) ) = ( 9 + 5 ) |
| 110 | 9p5e14 | |- ( 9 + 5 ) = ; 1 4 |
|
| 111 | 109 110 | eqtri | |- ( ( 1 x. 9 ) + ( 4 + 1 ) ) = ; 1 4 |
| 112 | 27 15 94 95 30 2 15 107 111 | decrmac | |- ( ( ; ; 2 3 1 x. 9 ) + ( 4 + 1 ) ) = ; ; ; 2 0 8 4 |
| 113 | 108 | oveq1i | |- ( ( 1 x. 9 ) + 6 ) = ( 9 + 6 ) |
| 114 | 9p6e15 | |- ( 9 + 6 ) = ; 1 5 |
|
| 115 | 113 114 | eqtri | |- ( ( 1 x. 9 ) + 6 ) = ; 1 5 |
| 116 | 28 15 2 85 90 92 30 22 15 112 115 | decmac | |- ( ( ; ; ; 2 3 1 1 x. 9 ) + ( ; 4 6 + 0 ) ) = ; ; ; ; 2 0 8 4 5 |
| 117 | 29 | nn0cni | |- ; ; ; 2 3 1 1 e. CC |
| 118 | 117 | mul01i | |- ( ; ; ; 2 3 1 1 x. 0 ) = 0 |
| 119 | 118 | oveq1i | |- ( ( ; ; ; 2 3 1 1 x. 0 ) + 2 ) = ( 0 + 2 ) |
| 120 | 119 72 73 | 3eqtri | |- ( ( ; ; ; 2 3 1 1 x. 0 ) + 2 ) = ; 0 2 |
| 121 | 30 3 86 10 88 89 29 10 3 116 120 | decma2c | |- ( ( ; ; ; 2 3 1 1 x. ; 9 0 ) + ; ; 4 6 2 ) = ; ; ; ; ; 2 0 8 4 5 2 |
| 122 | 2t2e4 | |- ( 2 x. 2 ) = 4 |
|
| 123 | 3t2e6 | |- ( 3 x. 2 ) = 6 |
|
| 124 | 10 10 26 96 122 123 | decmul1 | |- ( ; 2 3 x. 2 ) = ; 4 6 |
| 125 | 71 | mullidi | |- ( 1 x. 2 ) = 2 |
| 126 | 10 27 15 95 124 125 | decmul1 | |- ( ; ; 2 3 1 x. 2 ) = ; ; 4 6 2 |
| 127 | 10 28 15 90 126 125 | decmul1 | |- ( ; ; ; 2 3 1 1 x. 2 ) = ; ; ; 4 6 2 2 |
| 128 | 29 31 10 84 10 87 121 127 | decmul2c | |- ( ; ; ; 2 3 1 1 x. ; ; 9 0 2 ) = ; ; ; ; ; ; 2 0 8 4 5 2 2 |
| 129 | 83 128 | eqtr4i | |- ( ( ; ; 5 2 1 x. N ) + 1 ) = ( ; ; ; 2 3 1 1 x. ; ; 9 0 2 ) |
| 130 | 8 9 21 25 29 15 12 32 33 34 42 129 | modxai | |- ( ( 2 ^ ; ; ; 1 0 0 0 ) mod N ) = ( 1 mod N ) |
| 131 | 18 | nn0cni | |- ; ; ; 1 0 0 0 e. CC |
| 132 | eqid | |- ; ; ; 1 0 0 0 = ; ; ; 1 0 0 0 |
|
| 133 | eqid | |- ; ; 1 0 0 = ; ; 1 0 0 |
|
| 134 | 10 | dec0u | |- ( ; 1 0 x. 2 ) = ; 2 0 |
| 135 | 71 | mul02i | |- ( 0 x. 2 ) = 0 |
| 136 | 10 16 3 133 134 135 | decmul1 | |- ( ; ; 1 0 0 x. 2 ) = ; ; 2 0 0 |
| 137 | 10 17 3 132 136 135 | decmul1 | |- ( ; ; ; 1 0 0 0 x. 2 ) = ; ; ; 2 0 0 0 |
| 138 | 131 71 137 | mulcomli | |- ( 2 x. ; ; ; 1 0 0 0 ) = ; ; ; 2 0 0 0 |
| 139 | 8 | nncni | |- N e. CC |
| 140 | 139 | mul02i | |- ( 0 x. N ) = 0 |
| 141 | 140 | oveq1i | |- ( ( 0 x. N ) + 1 ) = ( 0 + 1 ) |
| 142 | 77 | addlidi | |- ( 0 + 1 ) = 1 |
| 143 | 78 142 | eqtr4i | |- ( 1 x. 1 ) = ( 0 + 1 ) |
| 144 | 141 143 | eqtr4i | |- ( ( 0 x. N ) + 1 ) = ( 1 x. 1 ) |
| 145 | 8 9 18 14 15 15 130 138 144 | mod2xi | |- ( ( 2 ^ ; ; ; 2 0 0 0 ) mod N ) = ( 1 mod N ) |
| 146 | 13 | nn0cni | |- ; ; ; 2 0 0 0 e. CC |
| 147 | eqid | |- ; ; ; 2 0 0 0 = ; ; ; 2 0 0 0 |
|
| 148 | 10 10 3 38 122 135 | decmul1 | |- ( ; 2 0 x. 2 ) = ; 4 0 |
| 149 | 10 11 3 36 148 135 | decmul1 | |- ( ; ; 2 0 0 x. 2 ) = ; ; 4 0 0 |
| 150 | 10 12 3 147 149 135 | decmul1 | |- ( ; ; ; 2 0 0 0 x. 2 ) = ; ; ; 4 0 0 0 |
| 151 | 146 71 150 | mulcomli | |- ( 2 x. ; ; ; 2 0 0 0 ) = ; ; ; 4 0 0 0 |
| 152 | 5 3 | deccl | |- ; ; ; 4 0 0 0 e. NN0 |
| 153 | 152 | nn0cni | |- ; ; ; 4 0 0 0 e. CC |
| 154 | eqid | |- ; ; ; 4 0 0 0 = ; ; ; 4 0 0 0 |
|
| 155 | 5 3 142 154 | decsuc | |- ( ; ; ; 4 0 0 0 + 1 ) = ; ; ; 4 0 0 1 |
| 156 | 1 155 | eqtr4i | |- N = ( ; ; ; 4 0 0 0 + 1 ) |
| 157 | 153 77 156 | mvrraddi | |- ( N - 1 ) = ; ; ; 4 0 0 0 |
| 158 | 151 157 | eqtr4i | |- ( 2 x. ; ; ; 2 0 0 0 ) = ( N - 1 ) |
| 159 | 8 9 13 14 15 15 145 158 144 | mod2xi | |- ( ( 2 ^ ( N - 1 ) ) mod N ) = ( 1 mod N ) |