| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > modlt | Structured version Visualization version GIF version | ||
| Description: The modulo operation is less than its second argument. (Contributed by NM, 10-Nov-2008.) |
| Ref | Expression |
|---|---|
| modlt | ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) < 𝐵) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | recn 11293 | . . . . 5 ⊢ (𝐴 ∈ ℝ → 𝐴 ∈ ℂ) | |
| 2 | rpcnne0 13142 | . . . . 5 ⊢ (𝐵 ∈ ℝ+ → (𝐵 ∈ ℂ ∧ 𝐵 ≠ 0)) | |
| 3 | divcan2 11985 | . . . . . 6 ⊢ ((𝐴 ∈ ℂ ∧ 𝐵 ∈ ℂ ∧ 𝐵 ≠ 0) → (𝐵 · (𝐴 / 𝐵)) = 𝐴) | |
| 4 | 3 | 3expb 1138 | . . . . 5 ⊢ ((𝐴 ∈ ℂ ∧ (𝐵 ∈ ℂ ∧ 𝐵 ≠ 0)) → (𝐵 · (𝐴 / 𝐵)) = 𝐴) |
| 5 | 1, 2, 4 | syl2an 608 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · (𝐴 / 𝐵)) = 𝐴) |
| 6 | 5 | oveq1d 7435 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐵 · (𝐴 / 𝐵)) − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵))))) |
| 7 | rpcn 13134 | . . . . 5 ⊢ (𝐵 ∈ ℝ+ → 𝐵 ∈ ℂ) | |
| 8 | 7 | adantl 487 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐵 ∈ ℂ) |
| 9 | rerpdivcl 13155 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℝ) | |
| 10 | 9 | recnd 11340 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℂ) |
| 11 | refldivcl 13966 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ∈ ℝ) | |
| 12 | 11 | recnd 11340 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ∈ ℂ) |
| 13 | 8, 10, 12 | subdid 11775 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵)))) = ((𝐵 · (𝐴 / 𝐵)) − (𝐵 · (⌊‘(𝐴 / 𝐵))))) |
| 14 | modval 14014 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵))))) | |
| 15 | 6, 13, 14 | 3eqtr4rd 2806 | . 2 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐵 · ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))))) |
| 16 | fraclt1 13945 | . . . . 5 ⊢ ((𝐴 / 𝐵) ∈ ℝ → ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) < 1) | |
| 17 | 9, 16 | syl 18 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) < 1) |
| 18 | divid 12007 | . . . . . 6 ⊢ ((𝐵 ∈ ℂ ∧ 𝐵 ≠ 0) → (𝐵 / 𝐵) = 1) | |
| 19 | 2, 18 | syl 18 | . . . . 5 ⊢ (𝐵 ∈ ℝ+ → (𝐵 / 𝐵) = 1) |
| 20 | 19 | adantl 487 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 / 𝐵) = 1) |
| 21 | 17, 20 | breqtrrd 5132 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) < (𝐵 / 𝐵)) |
| 22 | 9, 11 | resubcld 11747 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) ∈ ℝ) |
| 23 | rpre 13132 | . . . . 5 ⊢ (𝐵 ∈ ℝ+ → 𝐵 ∈ ℝ) | |
| 24 | 23 | adantl 487 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐵 ∈ ℝ) |
| 25 | rpregt0 13138 | . . . . 5 ⊢ (𝐵 ∈ ℝ+ → (𝐵 ∈ ℝ ∧ 0 < 𝐵)) | |
| 26 | 25 | adantl 487 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 ∈ ℝ ∧ 0 < 𝐵)) |
| 27 | ltmuldiv2 12194 | . . . 4 ⊢ ((((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ (𝐵 ∈ ℝ ∧ 0 < 𝐵)) → ((𝐵 · ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵)))) < 𝐵 ↔ ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) < (𝐵 / 𝐵))) | |
| 28 | 22, 24, 26, 27 | syl3anc 1398 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐵 · ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵)))) < 𝐵 ↔ ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵))) < (𝐵 / 𝐵))) |
| 29 | 21, 28 | mpbird 260 | . 2 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · ((𝐴 / 𝐵) − (⌊‘(𝐴 / 𝐵)))) < 𝐵) |
| 30 | 15, 29 | eqbrtrd 5126 | 1 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) < 𝐵) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ↔ wb 209 ∧ wa 401 = wceq 1569 ∈ wcel 2144 ≠ wne 2955 class class class wbr 5102 ‘cfv 6538 (class class class)co 7420 ℂcc 11201 ℝcr 11202 0cc0 11203 1c1 11204 · cmul 11208 < clt 11346 − cmin 11544 / cdiv 11976 ℝ+crp 13123 ⌊cfl 13933 mod cmo 14012 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1827 ax-4 1841 ax-5 1942 ax-6 1999 ax-7 2040 ax-8 2146 ax-9 2154 ax-10 2177 ax-11 2193 ax-12 2212 ax-ext 2732 ax-sep 5248 ax-nul 5259 ax-pow 5326 ax-pr 5390 ax-un 7751 ax-cnex 11259 ax-resscn 11260 ax-1cn 11261 ax-icn 11262 ax-addcl 11263 ax-addrcl 11264 ax-mulcl 11265 ax-mulrcl 11266 ax-mulcom 11267 ax-addass 11268 ax-mulass 11269 ax-distr 11270 ax-i2m1 11271 ax-1ne0 11272 ax-1rid 11273 ax-rnegex 11274 ax-rrecex 11275 ax-cnre 11276 ax-pre-lttri 11277 ax-pre-lttrn 11278 ax-pre-ltadd 11279 ax-pre-mulgt0 11280 ax-pre-sup 11281 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1572 df-fal 1582 df-ex 1812 df-nf 1816 df-sb 2099 df-mo 2564 df-eu 2594 df-clab 2739 df-cleq 2752 df-clel 2835 df-nfc 2909 df-ne 2956 df-nel 3062 df-ral 3077 df-rex 3087 df-rmo 3365 df-reu 3366 df-rab 3413 df-v 3452 df-sbc 3739 df-csb 3847 df-ss 3896 df-pss 4014 df-dif 4047 df-in 4091 df-un 4151 df-nul 4279 df-if 4482 df-pw 4558 df-sn 4585 df-pr 4587 df-op 4835 df-uni 4867 df-iun 4952 df-br 5103 df-opab 5167 df-mpt 5186 df-tr 5212 df-id 5545 df-eprel 5550 df-po 5558 df-so 5559 df-fr 5603 df-we 5605 df-xp 5656 df-rel 5657 df-cnv 5658 df-co 5659 df-dm 5660 df-rn 5661 df-res 5662 df-ima 5663 df-pred 6304 df-ord 6365 df-on 6366 df-lim 6367 df-suc 6368 df-iota 6494 df-fun 6540 df-fn 6541 df-f 6542 df-f1 6543 df-fo 6544 df-f1o 6545 df-fv 6546 df-riota 7377 df-ov 7423 df-oprab 7424 df-mpo 7425 df-om 7878 df-2nd 8002 df-frecs 8302 df-wrecs 8333 df-recs 8382 df-rdg 8421 df-er 8720 df-en 8977 df-dom 8978 df-sdom 8979 df-sup 9437 df-inf 9438 df-pnf 11348 df-mnf 11349 df-xr 11350 df-ltxr 11351 df-le 11352 df-sub 11546 df-neg 11547 df-div 11977 df-nn 12339 df-n0 12610 df-z 12697 df-uz 12969 df-rp 13124 df-fl 13935 df-mod 14013 |
| This theorem is used by: modelico 14024 zmodfz 14036 modid2 14041 modabs 14047 modaddmodup 14080 modsubdir 14086 digit1 14384 cshwidxmod 14958 repswcshw 14967 divalgmod 16581 bitsmod 16611 bitsinv1lem 16616 bezoutlem3 16719 eucalglt 16765 odzdvds 16978 fldivp1 17080 4sqlem6 17126 4sqlem12 17139 mndodcong 19761 oddvds 19766 gexdvds 19803 zringlpirlem3 21775 sineq0 26857 efif1olem2 26876 lgseisenlem1 27707 irrapxlem1 43922 pellfund14 43998 jm2.19 44093 sineq0ALT 46012 fourierswlem 47333 fouriersw 47334 gpg3nbgrvtx0 49267 |
| Copyright terms: Public domain | W3C validator |