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

Theorem modge0 13669
Description: The modulo operation is nonnegative. (Contributed by NM, 10-Nov-2008.)
Assertion
Ref Expression
modge0 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 mod 𝐵))

Proof of Theorem modge0
StepHypRef Expression
1 fldivle 13621 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ≤ (𝐴 / 𝐵))
2 refldivcl 13613 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ∈ ℝ)
3 simpl 483 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐴 ∈ ℝ)
4 rpregt0 12814 . . . . . 6 (𝐵 ∈ ℝ+ → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
54adantl 482 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 ∈ ℝ ∧ 0 < 𝐵))
6 lemuldiv2 11926 . . . . 5 (((⌊‘(𝐴 / 𝐵)) ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐵 · (⌊‘(𝐴 / 𝐵))) ≤ 𝐴 ↔ (⌊‘(𝐴 / 𝐵)) ≤ (𝐴 / 𝐵)))
72, 3, 5, 6syl3anc 1370 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐵 · (⌊‘(𝐴 / 𝐵))) ≤ 𝐴 ↔ (⌊‘(𝐴 / 𝐵)) ≤ (𝐴 / 𝐵)))
81, 7mpbird 256 . . 3 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · (⌊‘(𝐴 / 𝐵))) ≤ 𝐴)
9 rpre 12808 . . . . . 6 (𝐵 ∈ ℝ+𝐵 ∈ ℝ)
109adantl 482 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐵 ∈ ℝ)
1110, 2remulcld 11075 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · (⌊‘(𝐴 / 𝐵))) ∈ ℝ)
12 subge0 11558 . . . 4 ((𝐴 ∈ ℝ ∧ (𝐵 · (⌊‘(𝐴 / 𝐵))) ∈ ℝ) → (0 ≤ (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) ↔ (𝐵 · (⌊‘(𝐴 / 𝐵))) ≤ 𝐴))
1311, 12syldan 591 . . 3 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (0 ≤ (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) ↔ (𝐵 · (⌊‘(𝐴 / 𝐵))) ≤ 𝐴))
148, 13mpbird 256 . 2 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
15 modval 13661 . 2 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))))
1614, 15breqtrrd 5113 1 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 0 ≤ (𝐴 mod 𝐵))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  wcel 2105   class class class wbr 5085  cfv 6463  (class class class)co 7313  cr 10940  0cc0 10941   · cmul 10946   < clt 11079  cle 11080  cmin 11275   / cdiv 11702  +crp 12800  cfl 13580   mod cmo 13659
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 2708  ax-sep 5236  ax-nul 5243  ax-pow 5301  ax-pr 5365  ax-un 7626  ax-cnex 10997  ax-resscn 10998  ax-1cn 10999  ax-icn 11000  ax-addcl 11001  ax-addrcl 11002  ax-mulcl 11003  ax-mulrcl 11004  ax-mulcom 11005  ax-addass 11006  ax-mulass 11007  ax-distr 11008  ax-i2m1 11009  ax-1ne0 11010  ax-1rid 11011  ax-rnegex 11012  ax-rrecex 11013  ax-cnre 11014  ax-pre-lttri 11015  ax-pre-lttrn 11016  ax-pre-ltadd 11017  ax-pre-mulgt0 11018  ax-pre-sup 11019
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 2539  df-eu 2568  df-clab 2715  df-cleq 2729  df-clel 2815  df-nfc 2887  df-ne 2942  df-nel 3048  df-ral 3063  df-rex 3072  df-rmo 3350  df-reu 3351  df-rab 3405  df-v 3443  df-sbc 3726  df-csb 3842  df-dif 3899  df-un 3901  df-in 3903  df-ss 3913  df-pss 3915  df-nul 4267  df-if 4470  df-pw 4545  df-sn 4570  df-pr 4572  df-op 4576  df-uni 4849  df-iun 4937  df-br 5086  df-opab 5148  df-mpt 5169  df-tr 5203  df-id 5505  df-eprel 5511  df-po 5519  df-so 5520  df-fr 5560  df-we 5562  df-xp 5611  df-rel 5612  df-cnv 5613  df-co 5614  df-dm 5615  df-rn 5616  df-res 5617  df-ima 5618  df-pred 6222  df-ord 6289  df-on 6290  df-lim 6291  df-suc 6292  df-iota 6415  df-fun 6465  df-fn 6466  df-f 6467  df-f1 6468  df-fo 6469  df-f1o 6470  df-fv 6471  df-riota 7270  df-ov 7316  df-oprab 7317  df-mpo 7318  df-om 7756  df-2nd 7875  df-frecs 8142  df-wrecs 8173  df-recs 8247  df-rdg 8286  df-er 8544  df-en 8780  df-dom 8781  df-sdom 8782  df-sup 9269  df-inf 9270  df-pnf 11081  df-mnf 11082  df-xr 11083  df-ltxr 11084  df-le 11085  df-sub 11277  df-neg 11278  df-div 11703  df-nn 12044  df-n0 12304  df-z 12390  df-uz 12653  df-rp 12801  df-fl 13582  df-mod 13660
This theorem is referenced by:  modelico  13671  zmodcl  13681  modid2  13688  modabs  13694  modltm1p1mod  13713  modsubdir  13730  modeqmodmin  13731  digit1  14022  bitsinv1lem  16217  4sqlem6  16711  sineq0  25751  efif1olem2  25770  irrapxlem1  40854  pellfund14  40930  jm2.19  41026  sineq0ALT  42785  fourierswlem  44015  fouriersw  44016  difmodm1lt  46127
  Copyright terms: Public domain W3C validator