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

Theorem modid 12557
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 12532 . . 3 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
21adantr 480 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
3 rerpdivcl 11737 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℝ)
43adantr 480 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℝ)
54recnd 9947 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℂ)
6 addid2 10098 . . . . . . . . 9 ((𝐴 / 𝐵) ∈ ℂ → (0 + (𝐴 / 𝐵)) = (𝐴 / 𝐵))
76fveq2d 6107 . . . . . . . 8 ((𝐴 / 𝐵) ∈ ℂ → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
85, 7syl 17 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
9 rpregt0 11722 . . . . . . . . . . 11 (𝐵 ∈ ℝ+ → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
10 divge0 10771 . . . . . . . . . . 11 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
119, 10sylan2 490 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 / 𝐵))
1211an32s 842 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ 0 ≤ 𝐴) → 0 ≤ (𝐴 / 𝐵))
1312adantrr 749 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
14 simpr 476 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < 𝐵)
15 rpcn 11717 . . . . . . . . . . . . 13 (𝐵 ∈ ℝ+𝐵 ∈ ℂ)
1615mulid1d 9936 . . . . . . . . . . . 12 (𝐵 ∈ ℝ+ → (𝐵 · 1) = 𝐵)
1716adantr 480 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → (𝐵 · 1) = 𝐵)
1814, 17breqtrrd 4611 . . . . . . . . . 10 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < (𝐵 · 1))
1918ad2ant2l 778 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 < (𝐵 · 1))
20 simpll 786 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 ∈ ℝ)
219ad2antlr 759 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
22 1re 9918 . . . . . . . . . . 11 1 ∈ ℝ
23 ltdivmul 10777 . . . . . . . . . . 11 ((𝐴 ∈ ℝ ∧ 1 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2422, 23mp3an2 1404 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2520, 21, 24syl2anc 691 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2619, 25mpbird 246 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) < 1)
27 0z 11265 . . . . . . . . 9 0 ∈ ℤ
28 flbi2 12480 . . . . . . . . 9 ((0 ∈ ℤ ∧ (𝐴 / 𝐵) ∈ ℝ) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
2927, 4, 28sylancr 694 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
3013, 26, 29mpbir2and 959 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = 0)
318, 30eqtr3d 2646 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(𝐴 / 𝐵)) = 0)
3231oveq2d 6565 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = (𝐵 · 0))
3315mul01d 10114 . . . . . 6 (𝐵 ∈ ℝ+ → (𝐵 · 0) = 0)
3433ad2antlr 759 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · 0) = 0)
3532, 34eqtrd 2644 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = 0)
3635oveq2d 6565 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = (𝐴 − 0))
37 recn 9905 . . . . 5 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
3837subid1d 10260 . . . 4 (𝐴 ∈ ℝ → (𝐴 − 0) = 𝐴)
3938ad2antrr 758 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − 0) = 𝐴)
4036, 39eqtrd 2644 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = 𝐴)
412, 40eqtrd 2644 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = 𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 195  wa 383   = wceq 1475  wcel 1977   class class class wbr 4583  cfv 5804  (class class class)co 6549  cc 9813  cr 9814  0cc0 9815  1c1 9816   + caddc 9818   · cmul 9820   < clt 9953  cle 9954  cmin 10145   / cdiv 10563  cz 11254  +crp 11708  cfl 12453   mod cmo 12530
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1713  ax-4 1728  ax-5 1827  ax-6 1875  ax-7 1922  ax-8 1979  ax-9 1986  ax-10 2006  ax-11 2021  ax-12 2034  ax-13 2234  ax-ext 2590  ax-sep 4709  ax-nul 4717  ax-pow 4769  ax-pr 4833  ax-un 6847  ax-cnex 9871  ax-resscn 9872  ax-1cn 9873  ax-icn 9874  ax-addcl 9875  ax-addrcl 9876  ax-mulcl 9877  ax-mulrcl 9878  ax-mulcom 9879  ax-addass 9880  ax-mulass 9881  ax-distr 9882  ax-i2m1 9883  ax-1ne0 9884  ax-1rid 9885  ax-rnegex 9886  ax-rrecex 9887  ax-cnre 9888  ax-pre-lttri 9889  ax-pre-lttrn 9890  ax-pre-ltadd 9891  ax-pre-mulgt0 9892  ax-pre-sup 9893
This theorem depends on definitions:  df-bi 196  df-or 384  df-an 385  df-3or 1032  df-3an 1033  df-tru 1478  df-ex 1696  df-nf 1701  df-sb 1868  df-eu 2462  df-mo 2463  df-clab 2597  df-cleq 2603  df-clel 2606  df-nfc 2740  df-ne 2782  df-nel 2783  df-ral 2901  df-rex 2902  df-reu 2903  df-rmo 2904  df-rab 2905  df-v 3175  df-sbc 3403  df-csb 3500  df-dif 3543  df-un 3545  df-in 3547  df-ss 3554  df-pss 3556  df-nul 3875  df-if 4037  df-pw 4110  df-sn 4126  df-pr 4128  df-tp 4130  df-op 4132  df-uni 4373  df-iun 4457  df-br 4584  df-opab 4644  df-mpt 4645  df-tr 4681  df-eprel 4949  df-id 4953  df-po 4959  df-so 4960  df-fr 4997  df-we 4999  df-xp 5044  df-rel 5045  df-cnv 5046  df-co 5047  df-dm 5048  df-rn 5049  df-res 5050  df-ima 5051  df-pred 5597  df-ord 5643  df-on 5644  df-lim 5645  df-suc 5646  df-iota 5768  df-fun 5806  df-fn 5807  df-f 5808  df-f1 5809  df-fo 5810  df-f1o 5811  df-fv 5812  df-riota 6511  df-ov 6552  df-oprab 6553  df-mpt2 6554  df-om 6958  df-wrecs 7294  df-recs 7355  df-rdg 7393  df-er 7629  df-en 7842  df-dom 7843  df-sdom 7844  df-sup 8231  df-inf 8232  df-pnf 9955  df-mnf 9956  df-xr 9957  df-ltxr 9958  df-le 9959  df-sub 10147  df-neg 10148  df-div 10564  df-nn 10898  df-n0 11170  df-z 11255  df-uz 11564  df-rp 11709  df-fl 12455  df-mod 12531
This theorem is referenced by:  modid2  12559  0mod  12563  1mod  12564  modabs  12565  muladdmodid  12572  m1modnnsub1  12578  modltm1p1mod  12584  2submod  12593  modifeq2int  12594  modaddmodlo  12596  modsubdir  12601  modsumfzodifsn  12605  digit1  12860  cshwidxm1  13404  bitsinv1  15002  sadaddlem  15026  sadasslem  15030  sadeq  15032  crth  15321  eulerthlem2  15325  prmdiveq  15329  modprm0  15348  4sqlem12  15498  dfod2  17804  znf1o  19719  wilthlem1  24594  ppiub  24729  lgslem1  24822  lgsdir2lem1  24850  lgsdirprm  24856  lgsqrlem2  24872  lgseisenlem1  24900  lgseisenlem2  24901  lgseisen  24904  m1lgs  24913  2lgslem1a1  24914  2lgslem4  24931  2sqlem11  24954  sqwvfoura  39121  sqwvfourb  39122  fourierswlem  39123  fouriersw  39124  m1modmmod  42110  nnpw2pmod  42175
  Copyright terms: Public domain W3C validator