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

Theorem modid 13821
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 13796 . . 3 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
21adantr 480 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
3 rerpdivcl 12942 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℝ)
43adantr 480 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℝ)
54recnd 11165 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) ∈ ℂ)
6 addlid 11321 . . . . . . . . 9 ((𝐴 / 𝐵) ∈ ℂ → (0 + (𝐴 / 𝐵)) = (𝐴 / 𝐵))
76fveq2d 6839 . . . . . . . 8 ((𝐴 / 𝐵) ∈ ℂ → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
85, 7syl 17 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = (⌊‘(𝐴 / 𝐵)))
9 rpregt0 12925 . . . . . . . . . . 11 (𝐵 ∈ ℝ+ → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
10 divge0 12016 . . . . . . . . . . 11 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
119, 10sylan2 594 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 0 ≤ 𝐴) ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 / 𝐵))
1211an32s 653 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ 0 ≤ 𝐴) → 0 ≤ (𝐴 / 𝐵))
1312adantrr 718 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 0 ≤ (𝐴 / 𝐵))
14 simpr 484 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < 𝐵)
15 rpcn 12921 . . . . . . . . . . . . 13 (𝐵 ∈ ℝ+𝐵 ∈ ℂ)
1615mulridd 11154 . . . . . . . . . . . 12 (𝐵 ∈ ℝ+ → (𝐵 · 1) = 𝐵)
1716adantr 480 . . . . . . . . . . 11 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → (𝐵 · 1) = 𝐵)
1814, 17breqtrrd 5127 . . . . . . . . . 10 ((𝐵 ∈ ℝ+𝐴 < 𝐵) → 𝐴 < (𝐵 · 1))
1918ad2ant2l 747 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 < (𝐵 · 1))
20 simpll 767 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → 𝐴 ∈ ℝ)
219ad2antlr 728 . . . . . . . . . 10 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
22 1re 11137 . . . . . . . . . . 11 1 ∈ ℝ
23 ltdivmul 12022 . . . . . . . . . . 11 ((𝐴 ∈ ℝ ∧ 1 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2422, 23mp3an2 1452 . . . . . . . . . 10 ((𝐴 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2520, 21, 24syl2anc 585 . . . . . . . . 9 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((𝐴 / 𝐵) < 1 ↔ 𝐴 < (𝐵 · 1)))
2619, 25mpbird 257 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 / 𝐵) < 1)
27 0z 12504 . . . . . . . . 9 0 ∈ ℤ
28 flbi2 13742 . . . . . . . . 9 ((0 ∈ ℤ ∧ (𝐴 / 𝐵) ∈ ℝ) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
2927, 4, 28sylancr 588 . . . . . . . 8 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → ((⌊‘(0 + (𝐴 / 𝐵))) = 0 ↔ (0 ≤ (𝐴 / 𝐵) ∧ (𝐴 / 𝐵) < 1)))
3013, 26, 29mpbir2and 714 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(0 + (𝐴 / 𝐵))) = 0)
318, 30eqtr3d 2774 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (⌊‘(𝐴 / 𝐵)) = 0)
3231oveq2d 7377 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = (𝐵 · 0))
3315mul01d 11337 . . . . . 6 (𝐵 ∈ ℝ+ → (𝐵 · 0) = 0)
3433ad2antlr 728 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · 0) = 0)
3532, 34eqtrd 2772 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐵 · (⌊‘(𝐴 / 𝐵))) = 0)
3635oveq2d 7377 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = (𝐴 − 0))
37 recn 11121 . . . . 5 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
3837subid1d 11486 . . . 4 (𝐴 ∈ ℝ → (𝐴 − 0) = 𝐴)
3938ad2antrr 727 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − 0) = 𝐴)
4036, 39eqtrd 2772 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = 𝐴)
412, 40eqtrd 2772 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) ∧ (0 ≤ 𝐴𝐴 < 𝐵)) → (𝐴 mod 𝐵) = 𝐴)
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395   = wceq 1542  wcel 2114   class class class wbr 5099  cfv 6493  (class class class)co 7361  cc 11029  cr 11030  0cc0 11031  1c1 11032   + caddc 11034   · cmul 11036   < clt 11171  cle 11172  cmin 11369   / cdiv 11799  cz 12493  +crp 12910  cfl 13715   mod cmo 13794
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1797  ax-4 1811  ax-5 1912  ax-6 1969  ax-7 2010  ax-8 2116  ax-9 2124  ax-10 2147  ax-11 2163  ax-12 2185  ax-ext 2709  ax-sep 5242  ax-nul 5252  ax-pow 5311  ax-pr 5378  ax-un 7683  ax-cnex 11087  ax-resscn 11088  ax-1cn 11089  ax-icn 11090  ax-addcl 11091  ax-addrcl 11092  ax-mulcl 11093  ax-mulrcl 11094  ax-mulcom 11095  ax-addass 11096  ax-mulass 11097  ax-distr 11098  ax-i2m1 11099  ax-1ne0 11100  ax-1rid 11101  ax-rnegex 11102  ax-rrecex 11103  ax-cnre 11104  ax-pre-lttri 11105  ax-pre-lttrn 11106  ax-pre-ltadd 11107  ax-pre-mulgt0 11108  ax-pre-sup 11109
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 849  df-3or 1088  df-3an 1089  df-tru 1545  df-fal 1555  df-ex 1782  df-nf 1786  df-sb 2069  df-mo 2540  df-eu 2570  df-clab 2716  df-cleq 2729  df-clel 2812  df-nfc 2886  df-ne 2934  df-nel 3038  df-ral 3053  df-rex 3062  df-rmo 3351  df-reu 3352  df-rab 3401  df-v 3443  df-sbc 3742  df-csb 3851  df-dif 3905  df-un 3907  df-in 3909  df-ss 3919  df-pss 3922  df-nul 4287  df-if 4481  df-pw 4557  df-sn 4582  df-pr 4584  df-op 4588  df-uni 4865  df-iun 4949  df-br 5100  df-opab 5162  df-mpt 5181  df-tr 5207  df-id 5520  df-eprel 5525  df-po 5533  df-so 5534  df-fr 5578  df-we 5580  df-xp 5631  df-rel 5632  df-cnv 5633  df-co 5634  df-dm 5635  df-rn 5636  df-res 5637  df-ima 5638  df-pred 6260  df-ord 6321  df-on 6322  df-lim 6323  df-suc 6324  df-iota 6449  df-fun 6495  df-fn 6496  df-f 6497  df-f1 6498  df-fo 6499  df-f1o 6500  df-fv 6501  df-riota 7318  df-ov 7364  df-oprab 7365  df-mpo 7366  df-om 7812  df-2nd 7937  df-frecs 8226  df-wrecs 8257  df-recs 8306  df-rdg 8344  df-er 8638  df-en 8889  df-dom 8890  df-sdom 8891  df-sup 9350  df-inf 9351  df-pnf 11173  df-mnf 11174  df-xr 11175  df-ltxr 11176  df-le 11177  df-sub 11371  df-neg 11372  df-div 11800  df-nn 12151  df-n0 12407  df-z 12494  df-uz 12757  df-rp 12911  df-fl 13717  df-mod 13795
This theorem is referenced by:  modid2  13823  0mod  13827  1mod  13828  modabs  13829  muladdmodid  13838  m1modnnsub1  13845  modltm1p1mod  13851  2submod  13860  modifeq2int  13861  modaddmodlo  13863  modsubdir  13868  modsumfzodifsn  13872  digit1  14165  cshwidxm1  14735  bitsinv1  16374  sadaddlem  16398  sadasslem  16402  sadeq  16404  crth  16710  eulerthlem2  16714  prmdiveq  16718  modprm0  16738  4sqlem12  16889  dfod2  19498  znf1o  21511  wilthlem1  27039  ppiub  27176  lgslem1  27269  lgsdir2lem1  27297  lgsdirprm  27303  lgsqrlem2  27319  lgseisenlem1  27347  lgseisenlem2  27348  lgseisen  27351  m1lgs  27360  2lgslem1a1  27361  2lgslem4  27378  2sqlem11  27401  2sqreultlem  27419  2sqreunnltlem  27422  cshw1s2  33045  sqwvfoura  46549  sqwvfourb  46550  fourierswlem  46551  fouriersw  46552  addmodne  47667  submodlt  47673  m1modmmod  47681  2exp340mod341  48056  8exp8mod9  48059  fpprel2  48064  nfermltl8rev  48065  gpgedgvtx0  48384  gpgedgvtx1  48385  pgnbgreunbgrlem2lem1  48437  pgnbgreunbgrlem2lem2  48438  pgnbgreunbgrlem2lem3  48439  nnpw2pmod  48906
  Copyright terms: Public domain W3C validator