MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvdsmodexp Structured version   Visualization version   GIF version

Theorem dvdsmodexp 16062
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 16574). (Contributed by Mario Carneiro, 28-Feb-2014.) (Revised by AV, 19-Mar-2022.)
Assertion
Ref Expression
dvdsmodexp ((𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁𝐴) → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))

Proof of Theorem dvdsmodexp
StepHypRef Expression
1 dvdszrcl 16059 . . 3 (𝑁𝐴 → (𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ))
2 dvdsmod0 16060 . . . . . . . . 9 ((𝑁 ∈ ℕ ∧ 𝑁𝐴) → (𝐴 mod 𝑁) = 0)
323ad2antl2 1185 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ 𝑁𝐴) → (𝐴 mod 𝑁) = 0)
43ex 413 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁𝐴 → (𝐴 mod 𝑁) = 0))
5 simpl3 1192 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ)
650expd 13950 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0↑𝐵) = 0)
76oveq1d 7344 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((0↑𝐵) mod 𝑁) = (0 mod 𝑁))
8 simpl1 1190 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐴 ∈ ℤ)
9 0zd 12424 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 0 ∈ ℤ)
10 nnnn0 12333 . . . . . . . . . . . 12 (𝐵 ∈ ℕ → 𝐵 ∈ ℕ0)
11103ad2ant3 1134 . . . . . . . . . . 11 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝐵 ∈ ℕ0)
1211adantr 481 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ0)
13 nnrp 12834 . . . . . . . . . . . 12 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ+)
14133ad2ant2 1133 . . . . . . . . . . 11 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝑁 ∈ ℝ+)
1514adantr 481 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝑁 ∈ ℝ+)
16 simpr 485 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = 0)
17 0mod 13715 . . . . . . . . . . . 12 (𝑁 ∈ ℝ+ → (0 mod 𝑁) = 0)
1815, 17syl 17 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0 mod 𝑁) = 0)
1916, 18eqtr4d 2779 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = (0 mod 𝑁))
20 modexp 14046 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 0 ∈ ℤ) ∧ (𝐵 ∈ ℕ0𝑁 ∈ ℝ+) ∧ (𝐴 mod 𝑁) = (0 mod 𝑁)) → ((𝐴𝐵) mod 𝑁) = ((0↑𝐵) mod 𝑁))
218, 9, 12, 15, 19, 20syl221anc 1380 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴𝐵) mod 𝑁) = ((0↑𝐵) mod 𝑁))
227, 21, 193eqtr4d 2786 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))
2322ex 413 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ((𝐴 mod 𝑁) = 0 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))
244, 23syld 47 . . . . . 6 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁𝐴 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))
25243exp 1118 . . . . 5 (𝐴 ∈ ℤ → (𝑁 ∈ ℕ → (𝐵 ∈ ℕ → (𝑁𝐴 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
2625com24 95 . . . 4 (𝐴 ∈ ℤ → (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
2726adantl 482 . . 3 ((𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
281, 27mpcom 38 . 2 (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))))
29283imp31 1111 1 ((𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁𝐴) → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 396  w3a 1086   = wceq 1540  wcel 2105   class class class wbr 5089  (class class class)co 7329  0cc0 10964  cn 12066  0cn0 12326  cz 12412  +crp 12823   mod cmo 13682  cexp 13875  cdvds 16054
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1796  ax-4 1810  ax-5 1912  ax-6 1970  ax-7 2010  ax-8 2107  ax-9 2115  ax-10 2136  ax-11 2153  ax-12 2170  ax-ext 2707  ax-sep 5240  ax-nul 5247  ax-pow 5305  ax-pr 5369  ax-un 7642  ax-cnex 11020  ax-resscn 11021  ax-1cn 11022  ax-icn 11023  ax-addcl 11024  ax-addrcl 11025  ax-mulcl 11026  ax-mulrcl 11027  ax-mulcom 11028  ax-addass 11029  ax-mulass 11030  ax-distr 11031  ax-i2m1 11032  ax-1ne0 11033  ax-1rid 11034  ax-rnegex 11035  ax-rrecex 11036  ax-cnre 11037  ax-pre-lttri 11038  ax-pre-lttrn 11039  ax-pre-ltadd 11040  ax-pre-mulgt0 11041  ax-pre-sup 11042
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3or 1087  df-3an 1088  df-tru 1543  df-fal 1553  df-ex 1781  df-nf 1785  df-sb 2067  df-mo 2538  df-eu 2567  df-clab 2714  df-cleq 2728  df-clel 2814  df-nfc 2886  df-ne 2941  df-nel 3047  df-ral 3062  df-rex 3071  df-rmo 3349  df-reu 3350  df-rab 3404  df-v 3443  df-sbc 3727  df-csb 3843  df-dif 3900  df-un 3902  df-in 3904  df-ss 3914  df-pss 3916  df-nul 4269  df-if 4473  df-pw 4548  df-sn 4573  df-pr 4575  df-op 4579  df-uni 4852  df-iun 4940  df-br 5090  df-opab 5152  df-mpt 5173  df-tr 5207  df-id 5512  df-eprel 5518  df-po 5526  df-so 5527  df-fr 5569  df-we 5571  df-xp 5620  df-rel 5621  df-cnv 5622  df-co 5623  df-dm 5624  df-rn 5625  df-res 5626  df-ima 5627  df-pred 6232  df-ord 6299  df-on 6300  df-lim 6301  df-suc 6302  df-iota 6425  df-fun 6475  df-fn 6476  df-f 6477  df-f1 6478  df-fo 6479  df-f1o 6480  df-fv 6481  df-riota 7286  df-ov 7332  df-oprab 7333  df-mpo 7334  df-om 7773  df-2nd 7892  df-frecs 8159  df-wrecs 8190  df-recs 8264  df-rdg 8303  df-er 8561  df-en 8797  df-dom 8798  df-sdom 8799  df-sup 9291  df-inf 9292  df-pnf 11104  df-mnf 11105  df-xr 11106  df-ltxr 11107  df-le 11108  df-sub 11300  df-neg 11301  df-div 11726  df-nn 12067  df-n0 12327  df-z 12413  df-uz 12676  df-rp 12824  df-fl 13605  df-mod 13683  df-seq 13815  df-exp 13876  df-dvds 16055
This theorem is referenced by:  fermltl  16574
  Copyright terms: Public domain W3C validator