| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > dvdsmodexp | Structured version Visualization version GIF version | ||
| Description: If a positive integer divides another integer, this other integer is equal to its positive powers modulo the positive integer. (Formerly part of the proof for fermltl 16833). (Contributed by Mario Carneiro, 28-Feb-2014.) (Revised by AV, 19-Mar-2022.) |
| Ref | Expression |
|---|---|
| dvdsmodexp | ⊢ ((𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁 ∥ 𝐴) → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁)) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | dvdszrcl 16305 | . . 3 ⊢ (𝑁 ∥ 𝐴 → (𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ)) | |
| 2 | dvdsmod0 16306 | . . . . . . . . 9 ⊢ ((𝑁 ∈ ℕ ∧ 𝑁 ∥ 𝐴) → (𝐴 mod 𝑁) = 0) | |
| 3 | 2 | 3ad2antl2 1203 | . . . . . . . 8 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ 𝑁 ∥ 𝐴) → (𝐴 mod 𝑁) = 0) |
| 4 | 3 | ex 417 | . . . . . . 7 ⊢ ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁 ∥ 𝐴 → (𝐴 mod 𝑁) = 0)) |
| 5 | simpl3 1210 | . . . . . . . . . . 11 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ) | |
| 6 | 5 | 0expd 14166 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0↑𝐵) = 0) |
| 7 | 6 | oveq1d 7415 | . . . . . . . . 9 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((0↑𝐵) mod 𝑁) = (0 mod 𝑁)) |
| 8 | simpl1 1208 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐴 ∈ ℤ) | |
| 9 | 0zd 12594 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 0 ∈ ℤ) | |
| 10 | nnnn0 12502 | . . . . . . . . . . . 12 ⊢ (𝐵 ∈ ℕ → 𝐵 ∈ ℕ0) | |
| 11 | 10 | 3ad2ant3 1151 | . . . . . . . . . . 11 ⊢ ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝐵 ∈ ℕ0) |
| 12 | 11 | adantr 485 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ0) |
| 13 | nnrp 13019 | . . . . . . . . . . . 12 ⊢ (𝑁 ∈ ℕ → 𝑁 ∈ ℝ+) | |
| 14 | 13 | 3ad2ant2 1150 | . . . . . . . . . . 11 ⊢ ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝑁 ∈ ℝ+) |
| 15 | 14 | adantr 485 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝑁 ∈ ℝ+) |
| 16 | simpr 489 | . . . . . . . . . . 11 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = 0) | |
| 17 | 0mod 13926 | . . . . . . . . . . . 12 ⊢ (𝑁 ∈ ℝ+ → (0 mod 𝑁) = 0) | |
| 18 | 15, 17 | syl 18 | . . . . . . . . . . 11 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0 mod 𝑁) = 0) |
| 19 | 16, 18 | eqtr4d 2803 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = (0 mod 𝑁)) |
| 20 | modexp 14265 | . . . . . . . . . 10 ⊢ (((𝐴 ∈ ℤ ∧ 0 ∈ ℤ) ∧ (𝐵 ∈ ℕ0 ∧ 𝑁 ∈ ℝ+) ∧ (𝐴 mod 𝑁) = (0 mod 𝑁)) → ((𝐴↑𝐵) mod 𝑁) = ((0↑𝐵) mod 𝑁)) | |
| 21 | 8, 9, 12, 15, 19, 20 | syl221anc 1404 | . . . . . . . . 9 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴↑𝐵) mod 𝑁) = ((0↑𝐵) mod 𝑁)) |
| 22 | 7, 21, 19 | 3eqtr4d 2810 | . . . . . . . 8 ⊢ (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁)) |
| 23 | 22 | ex 417 | . . . . . . 7 ⊢ ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ((𝐴 mod 𝑁) = 0 → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁))) |
| 24 | 4, 23 | syld 48 | . . . . . 6 ⊢ ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁 ∥ 𝐴 → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁))) |
| 25 | 24 | 3exp 1135 | . . . . 5 ⊢ (𝐴 ∈ ℤ → (𝑁 ∈ ℕ → (𝐵 ∈ ℕ → (𝑁 ∥ 𝐴 → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁))))) |
| 26 | 25 | com24 96 | . . . 4 ⊢ (𝐴 ∈ ℤ → (𝑁 ∥ 𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁))))) |
| 27 | 26 | adantl 486 | . . 3 ⊢ ((𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑁 ∥ 𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁))))) |
| 28 | 1, 27 | mpcom 39 | . 2 ⊢ (𝑁 ∥ 𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁)))) |
| 29 | 28 | 3imp31 1127 | 1 ⊢ ((𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁 ∥ 𝐴) → ((𝐴↑𝐵) mod 𝑁) = (𝐴 mod 𝑁)) |
| Colors of variables: wff setvar class |
| Syntax hints: → wi 4 ∧ wa 400 ∧ w3a 1101 = wceq 1563 ∈ wcel 2145 class class class wbr 5105 (class class class)co 7400 0cc0 11088 ℕcn 12224 ℕ0cn0 12495 ℤcz 12582 ℝ+crp 13007 mod cmo 13893 ↑cexp 14088 ∥ cdvds 16300 |
| This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1818 ax-4 1832 ax-5 1933 ax-6 1990 ax-7 2031 ax-8 2147 ax-9 2155 ax-10 2178 ax-11 2194 ax-12 2215 ax-ext 2737 ax-sep 5251 ax-nul 5261 ax-pow 5327 ax-pr 5395 ax-un 7722 ax-cnex 11144 ax-resscn 11145 ax-1cn 11146 ax-icn 11147 ax-addcl 11148 ax-addrcl 11149 ax-mulcl 11150 ax-mulrcl 11151 ax-mulcom 11152 ax-addass 11153 ax-mulass 11154 ax-distr 11155 ax-i2m1 11156 ax-1ne0 11157 ax-1rid 11158 ax-rnegex 11159 ax-rrecex 11160 ax-cnre 11161 ax-pre-lttri 11162 ax-pre-lttrn 11163 ax-pre-ltadd 11164 ax-pre-mulgt0 11165 ax-pre-sup 11166 |
| This theorem depends on definitions: df-bi 210 df-an 401 df-or 861 df-3or 1102 df-3an 1103 df-tru 1566 df-fal 1576 df-ex 1803 df-nf 1807 df-sb 2094 df-mo 2569 df-eu 2599 df-clab 2744 df-cleq 2757 df-clel 2840 df-nfc 2914 df-ne 2961 df-nel 3065 df-ral 3080 df-rex 3090 df-rmo 3370 df-reu 3371 df-rab 3418 df-v 3459 df-sbc 3748 df-csb 3856 df-dif 3910 df-un 3912 df-in 3914 df-ss 3924 df-pss 3927 df-nul 4289 df-if 4484 df-pw 4560 df-sn 4586 df-pr 4588 df-op 4592 df-uni 4869 df-iun 4954 df-br 5106 df-opab 5168 df-mpt 5187 df-tr 5213 df-id 5547 df-eprel 5552 df-po 5560 df-so 5561 df-fr 5605 df-we 5607 df-xp 5658 df-rel 5659 df-cnv 5660 df-co 5661 df-dm 5662 df-rn 5663 df-res 5664 df-ima 5665 df-pred 6292 df-ord 6353 df-on 6354 df-lim 6355 df-suc 6356 df-iota 6481 df-fun 6527 df-fn 6528 df-f 6529 df-f1 6530 df-fo 6531 df-f1o 6532 df-fv 6533 df-riota 7357 df-ov 7403 df-oprab 7404 df-mpo 7405 df-om 7851 df-2nd 7975 df-frecs 8266 df-wrecs 8297 df-recs 8346 df-rdg 8385 df-er 8682 df-en 8932 df-dom 8933 df-sdom 8934 df-sup 9390 df-inf 9391 df-pnf 11233 df-mnf 11234 df-xr 11235 df-ltxr 11236 df-le 11237 df-sub 11431 df-neg 11432 df-div 11860 df-nn 12225 df-n0 12496 df-z 12583 df-uz 12854 df-rp 13008 df-fl 13816 df-mod 13894 df-seq 14029 df-exp 14089 df-dvds 16301 |
| This theorem is referenced by: fermltl 16833 |
| Copyright terms: Public domain | W3C validator |