ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  dvdsmodexp GIF version

Theorem dvdsmodexp 12545
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 12995). (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 12542 . . 3 (𝑁𝐴 → (𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ))
2 dvdsmod0 12543 . . . . . . . . 9 ((𝑁 ∈ ℕ ∧ 𝑁𝐴) → (𝐴 mod 𝑁) = 0)
323ad2antl2 1191 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ 𝑁𝐴) → (𝐴 mod 𝑁) = 0)
43ex 115 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁𝐴 → (𝐴 mod 𝑁) = 0))
5 simpl3 1033 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ)
650expd 11110 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0↑𝐵) = 0)
76oveq1d 6094 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((0↑𝐵) mod 𝑁) = (0 mod 𝑁))
8 simpl1 1031 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐴 ∈ ℤ)
9 0zd 9639 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 0 ∈ ℤ)
10 nnnn0 9553 . . . . . . . . . . . 12 (𝐵 ∈ ℕ → 𝐵 ∈ ℕ0)
11103ad2ant3 1051 . . . . . . . . . . 11 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝐵 ∈ ℕ0)
1211adantr 276 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝐵 ∈ ℕ0)
13 simpl2 1032 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝑁 ∈ ℕ)
14 nnq 10016 . . . . . . . . . . 11 (𝑁 ∈ ℕ → 𝑁 ∈ ℚ)
1513, 14syl 14 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝑁 ∈ ℚ)
16 nnrp 10047 . . . . . . . . . . . . 13 (𝑁 ∈ ℕ → 𝑁 ∈ ℝ+)
17163ad2ant2 1050 . . . . . . . . . . . 12 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → 𝑁 ∈ ℝ+)
1817adantr 276 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 𝑁 ∈ ℝ+)
1918rpgt0d 10083 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → 0 < 𝑁)
20 simpr 110 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = 0)
21 q0mod 10775 . . . . . . . . . . . 12 ((𝑁 ∈ ℚ ∧ 0 < 𝑁) → (0 mod 𝑁) = 0)
2215, 19, 21syl2anc 415 . . . . . . . . . . 11 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (0 mod 𝑁) = 0)
2320, 22eqtr4d 2274 . . . . . . . . . 10 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → (𝐴 mod 𝑁) = (0 mod 𝑁))
248, 9, 12, 15, 19, 23modqexp 11087 . . . . . . . . 9 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴𝐵) mod 𝑁) = ((0↑𝐵) mod 𝑁))
257, 24, 233eqtr4d 2281 . . . . . . . 8 (((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) ∧ (𝐴 mod 𝑁) = 0) → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))
2625ex 115 . . . . . . 7 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → ((𝐴 mod 𝑁) = 0 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))
274, 26syld 45 . . . . . 6 ((𝐴 ∈ ℤ ∧ 𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ) → (𝑁𝐴 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))
28273exp 1233 . . . . 5 (𝐴 ∈ ℤ → (𝑁 ∈ ℕ → (𝐵 ∈ ℕ → (𝑁𝐴 → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
2928com24 87 . . . 4 (𝐴 ∈ ℤ → (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
3029adantl 277 . . 3 ((𝑁 ∈ ℤ ∧ 𝐴 ∈ ℤ) → (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁)))))
311, 30mpcom 36 . 2 (𝑁𝐴 → (𝐵 ∈ ℕ → (𝑁 ∈ ℕ → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))))
32313imp31 1227 1 ((𝑁 ∈ ℕ ∧ 𝐵 ∈ ℕ ∧ 𝑁𝐴) → ((𝐴𝐵) mod 𝑁) = (𝐴 mod 𝑁))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 104  w3a 1009   = wceq 1402  wcel 2209   class class class wbr 4128  (class class class)co 6079  0cc0 8173   < clt 8354  cn 9287  0cn0 9546  cz 9627  cq 10002  +crp 10037   mod cmo 10742  cexp 10958  cdvds 12537
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-ia1 106  ax-ia2 107  ax-ia3 108  ax-in1 623  ax-in2 624  ax-io 721  ax-5 1500  ax-7 1501  ax-gen 1502  ax-ie1 1546  ax-ie2 1547  ax-8 1557  ax-10 1558  ax-11 1559  ax-i12 1560  ax-bndl 1562  ax-4 1563  ax-17 1579  ax-i9 1583  ax-ial 1587  ax-i5r 1588  ax-14 2212  ax-ext 2220  ax-coll 4244  ax-sep 4247  ax-nul 4257  ax-pow 4309  ax-pr 4344  ax-un 4576  ax-setind 4682  ax-iinf 4733  ax-cnex 8264  ax-resscn 8265  ax-1cn 8266  ax-1re 8267  ax-icn 8268  ax-addcl 8269  ax-addrcl 8270  ax-mulcl 8271  ax-mulrcl 8272  ax-addcom 8273  ax-mulcom 8274  ax-addass 8275  ax-mulass 8276  ax-distr 8277  ax-i2m1 8278  ax-0lt1 8279  ax-1rid 8280  ax-0id 8281  ax-rnegex 8282  ax-precex 8283  ax-cnre 8284  ax-pre-ltirr 8285  ax-pre-ltwlin 8286  ax-pre-lttrn 8287  ax-pre-apti 8288  ax-pre-ltadd 8289  ax-pre-mulgt0 8290  ax-pre-mulext 8291  ax-arch 8292
This theorem depends on definitions:  df-bi 117  df-dc 847  df-3or 1010  df-3an 1011  df-tru 1405  df-fal 1408  df-nf 1514  df-sb 1816  df-eu 2089  df-mo 2090  df-clab 2225  df-cleq 2231  df-clel 2234  df-nfc 2381  df-ne 2421  df-nel 2516  df-ral 2533  df-rex 2534  df-reu 2535  df-rmo 2536  df-rab 2537  df-v 2823  df-sbc 3052  df-csb 3148  df-dif 3222  df-un 3224  df-in 3226  df-ss 3233  df-nul 3521  df-if 3639  df-pw 3690  df-sn 3714  df-pr 3715  df-op 3717  df-uni 3934  df-int 3969  df-iun 4012  df-br 4129  df-opab 4191  df-mpt 4192  df-tr 4228  df-id 4436  df-po 4439  df-iso 4440  df-iord 4509  df-on 4511  df-ilim 4512  df-suc 4514  df-iom 4736  df-xp 4778  df-rel 4779  df-cnv 4780  df-co 4781  df-dm 4782  df-rn 4783  df-res 4784  df-ima 4785  df-iota 5335  df-fun 5377  df-fn 5378  df-f 5379  df-f1 5380  df-fo 5381  df-f1o 5382  df-fv 5383  df-riota 6032  df-ov 6082  df-oprab 6083  df-mpo 6084  df-1st 6368  df-2nd 6369  df-recs 6570  df-frec 6656  df-pnf 8356  df-mnf 8357  df-xr 8358  df-ltxr 8359  df-le 8360  df-sub 8493  df-neg 8494  df-reap 8897  df-ap 8904  df-div 8997  df-inn 9288  df-n0 9547  df-z 9628  df-uz 9905  df-q 10003  df-rp 10038  df-fl 10688  df-mod 10743  df-seqfrec 10868  df-exp 10959  df-dvds 12538
This theorem is referenced by:  fermltl  12995
  Copyright terms: Public domain W3C validator