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 | ⊢ 𝑁 = ; ; ; 4 0 0 1 | |
| Assertion | 4001lem3 | ⊢ ( ( 2 ↑ ( 𝑁 − 1 ) ) mod 𝑁 ) = ( 1 mod 𝑁 ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | 4001prm.1 | ⊢ 𝑁 = ; ; ; 4 0 0 1 | |
| 2 | 4nn0 | ⊢ 4 ∈ ℕ0 | |
| 3 | 0nn0 | ⊢ 0 ∈ ℕ0 | |
| 4 | 2 3 | deccl | ⊢ ; 4 0 ∈ ℕ0 |
| 5 | 4 3 | deccl | ⊢ ; ; 4 0 0 ∈ ℕ0 |
| 6 | 1nn | ⊢ 1 ∈ ℕ | |
| 7 | 5 6 | decnncl | ⊢ ; ; ; 4 0 0 1 ∈ ℕ |
| 8 | 1 7 | eqeltri | ⊢ 𝑁 ∈ ℕ |
| 9 | 2nn | ⊢ 2 ∈ ℕ | |
| 10 | 2nn0 | ⊢ 2 ∈ ℕ0 | |
| 11 | 10 3 | deccl | ⊢ ; 2 0 ∈ ℕ0 |
| 12 | 11 3 | deccl | ⊢ ; ; 2 0 0 ∈ ℕ0 |
| 13 | 12 3 | deccl | ⊢ ; ; ; 2 0 0 0 ∈ ℕ0 |
| 14 | 0z | ⊢ 0 ∈ ℤ | |
| 15 | 1nn0 | ⊢ 1 ∈ ℕ0 | |
| 16 | 10nn0 | ⊢ ; 1 0 ∈ ℕ0 | |
| 17 | 16 3 | deccl | ⊢ ; ; 1 0 0 ∈ ℕ0 |
| 18 | 17 3 | deccl | ⊢ ; ; ; 1 0 0 0 ∈ ℕ0 |
| 19 | 8nn0 | ⊢ 8 ∈ ℕ0 | |
| 20 | 19 3 | deccl | ⊢ ; 8 0 ∈ ℕ0 |
| 21 | 20 3 | deccl | ⊢ ; ; 8 0 0 ∈ ℕ0 |
| 22 | 5nn0 | ⊢ 5 ∈ ℕ0 | |
| 23 | 22 10 | deccl | ⊢ ; 5 2 ∈ ℕ0 |
| 24 | 23 15 | deccl | ⊢ ; ; 5 2 1 ∈ ℕ0 |
| 25 | 24 | nn0zi | ⊢ ; ; 5 2 1 ∈ ℤ |
| 26 | 3nn0 | ⊢ 3 ∈ ℕ0 | |
| 27 | 10 26 | deccl | ⊢ ; 2 3 ∈ ℕ0 |
| 28 | 27 15 | deccl | ⊢ ; ; 2 3 1 ∈ ℕ0 |
| 29 | 28 15 | deccl | ⊢ ; ; ; 2 3 1 1 ∈ ℕ0 |
| 30 | 9nn0 | ⊢ 9 ∈ ℕ0 | |
| 31 | 30 3 | deccl | ⊢ ; 9 0 ∈ ℕ0 |
| 32 | 31 10 | deccl | ⊢ ; ; 9 0 2 ∈ ℕ0 |
| 33 | 1 | 4001lem2 | ⊢ ( ( 2 ↑ ; ; 8 0 0 ) mod 𝑁 ) = ( ; ; ; 2 3 1 1 mod 𝑁 ) |
| 34 | 1 | 4001lem1 | ⊢ ( ( 2 ↑ ; ; 2 0 0 ) mod 𝑁 ) = ( ; ; 9 0 2 mod 𝑁 ) |
| 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 ∈ ℂ |
| 46 | 45 | addlidi | ⊢ ( 0 + ; 5 2 ) = ; 5 2 |
| 47 | eqid | ⊢ ; 4 0 = ; 4 0 | |
| 48 | 5cn | ⊢ 5 ∈ ℂ | |
| 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 ) ∈ ℕ0 |
| 53 | eqid | ⊢ ; ; 5 2 1 = ; ; 5 2 1 | |
| 54 | eqid | ⊢ ; 5 2 = ; 5 2 | |
| 55 | 5t4e20 | ⊢ ( 5 · 4 ) = ; 2 0 | |
| 56 | 2t4e8 | ⊢ ( 2 · 4 ) = 8 | |
| 57 | 2 22 10 54 55 56 | decmul1 | ⊢ ( ; 5 2 · 4 ) = ; ; 2 0 8 |
| 58 | 4cn | ⊢ 4 ∈ ℂ | |
| 59 | 58 | mullidi | ⊢ ( 1 · 4 ) = 4 |
| 60 | 59 40 | oveq12i | ⊢ ( ( 1 · 4 ) + ( 0 + 0 ) ) = ( 4 + 0 ) |
| 61 | 58 | addridi | ⊢ ( 4 + 0 ) = 4 |
| 62 | 60 61 | eqtri | ⊢ ( ( 1 · 4 ) + ( 0 + 0 ) ) = 4 |
| 63 | 23 15 52 53 2 57 62 | decrmanc | ⊢ ( ( ; ; 5 2 1 · 4 ) + ( 0 + 0 ) ) = ; ; ; 2 0 8 4 |
| 64 | 24 | nn0cni | ⊢ ; ; 5 2 1 ∈ ℂ |
| 65 | 64 | mul01i | ⊢ ( ; ; 5 2 1 · 0 ) = 0 |
| 66 | 65 | oveq1i | ⊢ ( ( ; ; 5 2 1 · 0 ) + 5 ) = ( 0 + 5 ) |
| 67 | 48 | addlidi | ⊢ ( 0 + 5 ) = 5 |
| 68 | 66 67 50 | 3eqtri | ⊢ ( ( ; ; 5 2 1 · 0 ) + 5 ) = ; 0 5 |
| 69 | 2 3 3 22 47 51 24 22 3 63 68 | decma2c | ⊢ ( ( ; ; 5 2 1 · ; 4 0 ) + ( 5 + 0 ) ) = ; ; ; ; 2 0 8 4 5 |
| 70 | 65 | oveq1i | ⊢ ( ( ; ; 5 2 1 · 0 ) + 2 ) = ( 0 + 2 ) |
| 71 | 2cn | ⊢ 2 ∈ ℂ | |
| 72 | 71 | addlidi | ⊢ ( 0 + 2 ) = 2 |
| 73 | 10 | dec0h | ⊢ 2 = ; 0 2 |
| 74 | 70 72 73 | 3eqtri | ⊢ ( ( ; ; 5 2 1 · 0 ) + 2 ) = ; 0 2 |
| 75 | 4 3 22 10 44 46 24 10 3 69 74 | decma2c | ⊢ ( ( ; ; 5 2 1 · ; ; 4 0 0 ) + ( 0 + ; 5 2 ) ) = ; ; ; ; ; 2 0 8 4 5 2 |
| 76 | 45 | mulridi | ⊢ ( ; 5 2 · 1 ) = ; 5 2 |
| 77 | ax-1cn | ⊢ 1 ∈ ℂ | |
| 78 | 77 | mullidi | ⊢ ( 1 · 1 ) = 1 |
| 79 | 78 | oveq1i | ⊢ ( ( 1 · 1 ) + 1 ) = ( 1 + 1 ) |
| 80 | 1p1e2 | ⊢ ( 1 + 1 ) = 2 | |
| 81 | 79 80 | eqtri | ⊢ ( ( 1 · 1 ) + 1 ) = 2 |
| 82 | 23 15 15 53 15 76 81 | decrmanc | ⊢ ( ( ; ; 5 2 1 · 1 ) + 1 ) = ; ; 5 2 2 |
| 83 | 5 15 3 15 1 43 24 10 23 75 82 | decma2c | ⊢ ( ( ; ; 5 2 1 · 𝑁 ) + 1 ) = ; ; ; ; ; ; 2 0 8 4 5 2 2 |
| 84 | eqid | ⊢ ; ; 9 0 2 = ; ; 9 0 2 | |
| 85 | 6nn0 | ⊢ 6 ∈ ℕ0 | |
| 86 | 2 85 | deccl | ⊢ ; 4 6 ∈ ℕ0 |
| 87 | 86 10 | deccl | ⊢ ; ; 4 6 2 ∈ ℕ0 |
| 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 ∈ ℂ |
| 92 | 91 | addridi | ⊢ ( ; 4 6 + 0 ) = ; 4 6 |
| 93 | 4p1e5 | ⊢ ( 4 + 1 ) = 5 | |
| 94 | 93 22 | eqeltri | ⊢ ( 4 + 1 ) ∈ ℕ0 |
| 95 | eqid | ⊢ ; ; 2 3 1 = ; ; 2 3 1 | |
| 96 | eqid | ⊢ ; 2 3 = ; 2 3 | |
| 97 | 9cn | ⊢ 9 ∈ ℂ | |
| 98 | 9t2e18 | ⊢ ( 9 · 2 ) = ; 1 8 | |
| 99 | 97 71 98 | mulcomli | ⊢ ( 2 · 9 ) = ; 1 8 |
| 100 | 15 19 10 99 80 39 | decaddci2 | ⊢ ( ( 2 · 9 ) + 2 ) = ; 2 0 |
| 101 | 7nn0 | ⊢ 7 ∈ ℕ0 | |
| 102 | 7p1e8 | ⊢ ( 7 + 1 ) = 8 | |
| 103 | 3cn | ⊢ 3 ∈ ℂ | |
| 104 | 9t3e27 | ⊢ ( 9 · 3 ) = ; 2 7 | |
| 105 | 97 103 104 | mulcomli | ⊢ ( 3 · 9 ) = ; 2 7 |
| 106 | 10 101 102 105 | decsuc | ⊢ ( ( 3 · 9 ) + 1 ) = ; 2 8 |
| 107 | 10 26 15 96 30 19 10 100 106 | decrmac | ⊢ ( ( ; 2 3 · 9 ) + 1 ) = ; ; 2 0 8 |
| 108 | 97 | mullidi | ⊢ ( 1 · 9 ) = 9 |
| 109 | 108 93 | oveq12i | ⊢ ( ( 1 · 9 ) + ( 4 + 1 ) ) = ( 9 + 5 ) |
| 110 | 9p5e14 | ⊢ ( 9 + 5 ) = ; 1 4 | |
| 111 | 109 110 | eqtri | ⊢ ( ( 1 · 9 ) + ( 4 + 1 ) ) = ; 1 4 |
| 112 | 27 15 94 95 30 2 15 107 111 | decrmac | ⊢ ( ( ; ; 2 3 1 · 9 ) + ( 4 + 1 ) ) = ; ; ; 2 0 8 4 |
| 113 | 108 | oveq1i | ⊢ ( ( 1 · 9 ) + 6 ) = ( 9 + 6 ) |
| 114 | 9p6e15 | ⊢ ( 9 + 6 ) = ; 1 5 | |
| 115 | 113 114 | eqtri | ⊢ ( ( 1 · 9 ) + 6 ) = ; 1 5 |
| 116 | 28 15 2 85 90 92 30 22 15 112 115 | decmac | ⊢ ( ( ; ; ; 2 3 1 1 · 9 ) + ( ; 4 6 + 0 ) ) = ; ; ; ; 2 0 8 4 5 |
| 117 | 29 | nn0cni | ⊢ ; ; ; 2 3 1 1 ∈ ℂ |
| 118 | 117 | mul01i | ⊢ ( ; ; ; 2 3 1 1 · 0 ) = 0 |
| 119 | 118 | oveq1i | ⊢ ( ( ; ; ; 2 3 1 1 · 0 ) + 2 ) = ( 0 + 2 ) |
| 120 | 119 72 73 | 3eqtri | ⊢ ( ( ; ; ; 2 3 1 1 · 0 ) + 2 ) = ; 0 2 |
| 121 | 30 3 86 10 88 89 29 10 3 116 120 | decma2c | ⊢ ( ( ; ; ; 2 3 1 1 · ; 9 0 ) + ; ; 4 6 2 ) = ; ; ; ; ; 2 0 8 4 5 2 |
| 122 | 2t2e4 | ⊢ ( 2 · 2 ) = 4 | |
| 123 | 3t2e6 | ⊢ ( 3 · 2 ) = 6 | |
| 124 | 10 10 26 96 122 123 | decmul1 | ⊢ ( ; 2 3 · 2 ) = ; 4 6 |
| 125 | 71 | mullidi | ⊢ ( 1 · 2 ) = 2 |
| 126 | 10 27 15 95 124 125 | decmul1 | ⊢ ( ; ; 2 3 1 · 2 ) = ; ; 4 6 2 |
| 127 | 10 28 15 90 126 125 | decmul1 | ⊢ ( ; ; ; 2 3 1 1 · 2 ) = ; ; ; 4 6 2 2 |
| 128 | 29 31 10 84 10 87 121 127 | decmul2c | ⊢ ( ; ; ; 2 3 1 1 · ; ; 9 0 2 ) = ; ; ; ; ; ; 2 0 8 4 5 2 2 |
| 129 | 83 128 | eqtr4i | ⊢ ( ( ; ; 5 2 1 · 𝑁 ) + 1 ) = ( ; ; ; 2 3 1 1 · ; ; 9 0 2 ) |
| 130 | 8 9 21 25 29 15 12 32 33 34 42 129 | modxai | ⊢ ( ( 2 ↑ ; ; ; 1 0 0 0 ) mod 𝑁 ) = ( 1 mod 𝑁 ) |
| 131 | 18 | nn0cni | ⊢ ; ; ; 1 0 0 0 ∈ ℂ |
| 132 | eqid | ⊢ ; ; ; 1 0 0 0 = ; ; ; 1 0 0 0 | |
| 133 | eqid | ⊢ ; ; 1 0 0 = ; ; 1 0 0 | |
| 134 | 10 | dec0u | ⊢ ( ; 1 0 · 2 ) = ; 2 0 |
| 135 | 71 | mul02i | ⊢ ( 0 · 2 ) = 0 |
| 136 | 10 16 3 133 134 135 | decmul1 | ⊢ ( ; ; 1 0 0 · 2 ) = ; ; 2 0 0 |
| 137 | 10 17 3 132 136 135 | decmul1 | ⊢ ( ; ; ; 1 0 0 0 · 2 ) = ; ; ; 2 0 0 0 |
| 138 | 131 71 137 | mulcomli | ⊢ ( 2 · ; ; ; 1 0 0 0 ) = ; ; ; 2 0 0 0 |
| 139 | 8 | nncni | ⊢ 𝑁 ∈ ℂ |
| 140 | 139 | mul02i | ⊢ ( 0 · 𝑁 ) = 0 |
| 141 | 140 | oveq1i | ⊢ ( ( 0 · 𝑁 ) + 1 ) = ( 0 + 1 ) |
| 142 | 77 | addlidi | ⊢ ( 0 + 1 ) = 1 |
| 143 | 78 142 | eqtr4i | ⊢ ( 1 · 1 ) = ( 0 + 1 ) |
| 144 | 141 143 | eqtr4i | ⊢ ( ( 0 · 𝑁 ) + 1 ) = ( 1 · 1 ) |
| 145 | 8 9 18 14 15 15 130 138 144 | mod2xi | ⊢ ( ( 2 ↑ ; ; ; 2 0 0 0 ) mod 𝑁 ) = ( 1 mod 𝑁 ) |
| 146 | 13 | nn0cni | ⊢ ; ; ; 2 0 0 0 ∈ ℂ |
| 147 | eqid | ⊢ ; ; ; 2 0 0 0 = ; ; ; 2 0 0 0 | |
| 148 | 10 10 3 38 122 135 | decmul1 | ⊢ ( ; 2 0 · 2 ) = ; 4 0 |
| 149 | 10 11 3 36 148 135 | decmul1 | ⊢ ( ; ; 2 0 0 · 2 ) = ; ; 4 0 0 |
| 150 | 10 12 3 147 149 135 | decmul1 | ⊢ ( ; ; ; 2 0 0 0 · 2 ) = ; ; ; 4 0 0 0 |
| 151 | 146 71 150 | mulcomli | ⊢ ( 2 · ; ; ; 2 0 0 0 ) = ; ; ; 4 0 0 0 |
| 152 | 5 3 | deccl | ⊢ ; ; ; 4 0 0 0 ∈ ℕ0 |
| 153 | 152 | nn0cni | ⊢ ; ; ; 4 0 0 0 ∈ ℂ |
| 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 | ⊢ 𝑁 = ( ; ; ; 4 0 0 0 + 1 ) |
| 157 | 153 77 156 | mvrraddi | ⊢ ( 𝑁 − 1 ) = ; ; ; 4 0 0 0 |
| 158 | 151 157 | eqtr4i | ⊢ ( 2 · ; ; ; 2 0 0 0 ) = ( 𝑁 − 1 ) |
| 159 | 8 9 13 14 15 15 145 158 144 | mod2xi | ⊢ ( ( 2 ↑ ( 𝑁 − 1 ) ) mod 𝑁 ) = ( 1 mod 𝑁 ) |