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

Theorem modid 12903
Description: Identity law for modulo. (Contributed by NM, 29-Dec-2008.)
Assertion
Ref Expression
modid (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = 𝐴)

Proof of Theorem modid
StepHypRef Expression
1 modval 12878 . . 3 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
21adantr 472 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
3 rerpdivcl 12059 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℝ)
43adantr 472 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℝ)
54recnd 10322 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℂ)
6 addid2 10473 . . . . . . . . 9 ((𝐴 / 𝐵) ∈ ℂ → (0 + (𝐴 / 𝐵)) = (𝐴 / 𝐵))
76fveq2d 6379 . . . . . . . 8 ((𝐴 / 𝐵) ∈ ℂ → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
85, 7syl 17 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
9 rpregt0 12044 . . . . . . . . . . 11 (𝐵 ∈ ℝ+ → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
10 divge0 11146 . . . . . . . . . . 11 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
119, 10sylan2 586 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 / 𝐵))
1211an32s 642 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ 0 ≤ 𝐴) → 0 ≤ (𝐴 / 𝐵))
1312adantrr 708 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
14 simpr 477 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < 𝐵)
15 rpcn 12040 . . . . . . . . . . . . 13 (𝐵 ∈ ℝ+𝐵 ∈ ℂ)
1615mulid1d 10311 . . . . . . . . . . . 12 (𝐵 ∈ ℝ+ → (𝐵 · 1) = 𝐵)
1716adantr 472 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → (𝐵 · 1) = 𝐵)
1814, 17breqtrrd 4837 . . . . . . . . . 10 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < (𝐵 · 1))
1918ad2ant2l 752 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 < (𝐵 · 1))
20 simpll 783 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 ∈ ℝ)
219ad2antlr 718 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
22 1re 10293 . . . . . . . . . . 11 1 ∈ ℝ
23 ltdivmul 11152 . . . . . . . . . . 11 ((𝐴 ∈ ℝ ∧ 1 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2422, 23mp3an2 1573 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2520, 21, 24syl2anc 579 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2619, 25mpbird 248 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) < 1)
27 0z 11635 . . . . . . . . 9 0 ∈ ℤ
28 flbi2 12826 . . . . . . . . 9 ((0 ∈ ℤ ∧ (𝐴 / 𝐵) ∈ ℝ) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
2927, 4, 28sylancr 581 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
3013, 26, 29mpbir2and 704 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = 0)
318, 30eqtr3d 2801 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(𝐴 / 𝐵)) = 0)
3231oveq2d 6858 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = (𝐵 · 0))
3315mul01d 10489 . . . . . 6 (𝐵 ∈ ℝ+ → (𝐵 · 0) = 0)
3433ad2antlr 718 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · 0) = 0)
3532, 34eqtrd 2799 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = 0)
3635oveq2d 6858 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = (𝐴 − 0))
37 recn 10279 . . . . 5 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
3837subid1d 10635 . . . 4 (𝐴 ∈ ℝ → (𝐴 − 0) = 𝐴)
3938ad2antrr 717 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − 0) = 𝐴)
4036, 39eqtrd 2799 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = 𝐴)
412, 40eqtrd 2799 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = 𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 197  wa 384   = wceq 1652  wcel 2155   class class class wbr 4809  cfv 6068  (class class class)co 6842  cc 10187  cr 10188  0cc0 10189  1c1 10190   + caddc 10192   · cmul 10194   < clt 10328  cle 10329  cmin 10520   / cdiv 10938  cz 11624  +crp 12028  cfl 12799   mod cmo 12876
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1890  ax-4 1904  ax-5 2005  ax-6 2069  ax-7 2105  ax-8 2157  ax-9 2164  ax-10 2183  ax-11 2198  ax-12 2211  ax-13 2352  ax-ext 2743  ax-sep 4941  ax-nul 4949  ax-pow 5001  ax-pr 5062  ax-un 7147  ax-cnex 10245  ax-resscn 10246  ax-1cn 10247  ax-icn 10248  ax-addcl 10249  ax-addrcl 10250  ax-mulcl 10251  ax-mulrcl 10252  ax-mulcom 10253  ax-addass 10254  ax-mulass 10255  ax-distr 10256  ax-i2m1 10257  ax-1ne0 10258  ax-1rid 10259  ax-rnegex 10260  ax-rrecex 10261  ax-cnre 10262  ax-pre-lttri 10263  ax-pre-lttrn 10264  ax-pre-ltadd 10265  ax-pre-mulgt0 10266  ax-pre-sup 10267
This theorem depends on definitions:  df-bi 198  df-an 385  df-or 874  df-3or 1108  df-3an 1109  df-tru 1656  df-ex 1875  df-nf 1879  df-sb 2062  df-mo 2565  df-eu 2582  df-clab 2752  df-cleq 2758  df-clel 2761  df-nfc 2896  df-ne 2938  df-nel 3041  df-ral 3060  df-rex 3061  df-reu 3062  df-rmo 3063  df-rab 3064  df-v 3352  df-sbc 3597  df-csb 3692  df-dif 3735  df-un 3737  df-in 3739  df-ss 3746  df-pss 3748  df-nul 4080  df-if 4244  df-pw 4317  df-sn 4335  df-pr 4337  df-tp 4339  df-op 4341  df-uni 4595  df-iun 4678  df-br 4810  df-opab 4872  df-mpt 4889  df-tr 4912  df-id 5185  df-eprel 5190  df-po 5198  df-so 5199  df-fr 5236  df-we 5238  df-xp 5283  df-rel 5284  df-cnv 5285  df-co 5286  df-dm 5287  df-rn 5288  df-res 5289  df-ima 5290  df-pred 5865  df-ord 5911  df-on 5912  df-lim 5913  df-suc 5914  df-iota 6031  df-fun 6070  df-fn 6071  df-f 6072  df-f1 6073  df-fo 6074  df-f1o 6075  df-fv 6076  df-riota 6803  df-ov 6845  df-oprab 6846  df-mpt2 6847  df-om 7264  df-wrecs 7610  df-recs 7672  df-rdg 7710  df-er 7947  df-en 8161  df-dom 8162  df-sdom 8163  df-sup 8555  df-inf 8556  df-pnf 10330  df-mnf 10331  df-xr 10332  df-ltxr 10333  df-le 10334  df-sub 10522  df-neg 10523  df-div 10939  df-nn 11275  df-n0 11539  df-z 11625  df-uz 11887  df-rp 12029  df-fl 12801  df-mod 12877
This theorem is referenced by:  modid2  12905  0mod  12909  1mod  12910  modabs  12911  muladdmodid  12918  m1modnnsub1  12924  modltm1p1mod  12930  2submod  12939  modifeq2int  12940  modaddmodlo  12942  modsubdir  12947  modsumfzodifsn  12951  digit1  13205  cshwidxm1  13837  bitsinv1  15447  sadaddlem  15471  sadasslem  15475  sadeq  15477  crth  15764  eulerthlem2  15768  prmdiveq  15772  modprm0  15791  4sqlem12  15941  dfod2  18247  znf1o  20172  wilthlem1  25085  ppiub  25220  lgslem1  25313  lgsdir2lem1  25341  lgsdirprm  25347  lgsqrlem2  25363  lgseisenlem1  25391  lgseisenlem2  25392  lgseisen  25395  m1lgs  25404  2lgslem1a1  25405  2lgslem4  25422  2sqlem11  25445  sqwvfoura  41014  sqwvfourb  41015  fourierswlem  41016  fouriersw  41017  m1modmmod  42917  nnpw2pmod  42978
  Copyright terms: Public domain W3C validator