| Metamath Proof Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > MPE Home > Th. List > mod0 | Structured version Visualization version GIF version | ||
| Description: 𝐴 mod 𝐵 is zero iff 𝐴 is evenly divisible by 𝐵. (Contributed by Jeff Madsen, 2-Sep-2009.) (Proof shortened by Fan Zheng, 7-Jun-2016.) |
| Ref | Expression |
|---|---|
| mod0 | ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 mod 𝐵) = 0 ↔ (𝐴 / 𝐵) ∈ ℤ)) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | modval 13934 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 mod 𝐵) = (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵))))) | |
| 2 | 1 | eqeq1d 2764 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 mod 𝐵) = 0 ↔ (𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = 0)) |
| 3 | recn 11217 | . . . . . 6 ⊢ (𝐴 ∈ ℝ → 𝐴 ∈ ℂ) | |
| 4 | 3 | adantr 486 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐴 ∈ ℂ) |
| 5 | rpre 13053 | . . . . . . . 8 ⊢ (𝐵 ∈ ℝ+ → 𝐵 ∈ ℝ) | |
| 6 | 5 | adantl 487 | . . . . . . 7 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → 𝐵 ∈ ℝ) |
| 7 | refldivcl 13886 | . . . . . . 7 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ∈ ℝ) | |
| 8 | 6, 7 | remulcld 11266 | . . . . . 6 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · (⌊‘(𝐴 / 𝐵))) ∈ ℝ) |
| 9 | 8 | recnd 11264 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 · (⌊‘(𝐴 / 𝐵))) ∈ ℂ) |
| 10 | 4, 9 | subeq0ad 11606 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 − (𝐵 · (⌊‘(𝐴 / 𝐵)))) = 0 ↔ 𝐴 = (𝐵 · (⌊‘(𝐴 / 𝐵))))) |
| 11 | 2, 10 | bitrd 282 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 mod 𝐵) = 0 ↔ 𝐴 = (𝐵 · (⌊‘(𝐴 / 𝐵))))) |
| 12 | 7 | recnd 11264 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (⌊‘(𝐴 / 𝐵)) ∈ ℂ) |
| 13 | rpcnne0 13063 | . . . . . 6 ⊢ (𝐵 ∈ ℝ+ → (𝐵 ∈ ℂ ∧ 𝐵 ≠ 0)) | |
| 14 | 13 | adantl 487 | . . . . 5 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐵 ∈ ℂ ∧ 𝐵 ≠ 0)) |
| 15 | divmul2 11903 | . . . . 5 ⊢ ((𝐴 ∈ ℂ ∧ (⌊‘(𝐴 / 𝐵)) ∈ ℂ ∧ (𝐵 ∈ ℂ ∧ 𝐵 ≠ 0)) → ((𝐴 / 𝐵) = (⌊‘(𝐴 / 𝐵)) ↔ 𝐴 = (𝐵 · (⌊‘(𝐴 / 𝐵))))) | |
| 16 | 4, 12, 14, 15 | syl3anc 1398 | . . . 4 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 / 𝐵) = (⌊‘(𝐴 / 𝐵)) ↔ 𝐴 = (𝐵 · (⌊‘(𝐴 / 𝐵))))) |
| 17 | eqcom 2769 | . . . 4 ⊢ ((𝐴 / 𝐵) = (⌊‘(𝐴 / 𝐵)) ↔ (⌊‘(𝐴 / 𝐵)) = (𝐴 / 𝐵)) | |
| 18 | 16, 17 | bitr3di 289 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 = (𝐵 · (⌊‘(𝐴 / 𝐵))) ↔ (⌊‘(𝐴 / 𝐵)) = (𝐴 / 𝐵))) |
| 19 | 11, 18 | bitrd 282 | . 2 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 mod 𝐵) = 0 ↔ (⌊‘(𝐴 / 𝐵)) = (𝐴 / 𝐵))) |
| 20 | rerpdivcl 13076 | . . 3 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → (𝐴 / 𝐵) ∈ ℝ) | |
| 21 | flidz 13873 | . . 3 ⊢ ((𝐴 / 𝐵) ∈ ℝ → ((⌊‘(𝐴 / 𝐵)) = (𝐴 / 𝐵) ↔ (𝐴 / 𝐵) ∈ ℤ)) | |
| 22 | 20, 21 | syl 18 | . 2 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((⌊‘(𝐴 / 𝐵)) = (𝐴 / 𝐵) ↔ (𝐴 / 𝐵) ∈ ℤ)) |
| 23 | 19, 22 | bitrd 282 | 1 ⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ+) → ((𝐴 mod 𝐵) = 0 ↔ (𝐴 / 𝐵) ∈ ℤ)) |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ↔ wb 209 ∧ wa 401 = wceq 1570 ∈ wcel 2145 ≠ wne 2957 ‘cfv 6537 (class class class)co 7416 ℂcc 11125 ℝcr 11126 0cc0 11127 · cmul 11132 − cmin 11468 / cdiv 11898 ℤcz 12618 ℝ+crp 13044 ⌊cfl 13853 mod cmo 13932 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1828 ax-4 1842 ax-5 1943 ax-6 2000 ax-7 2041 ax-8 2147 ax-9 2155 ax-10 2178 ax-11 2194 ax-12 2215 ax-ext 2734 ax-sep 5255 ax-nul 5267 ax-pow 5334 ax-pr 5402 ax-un 7739 ax-cnex 11183 ax-resscn 11184 ax-1cn 11185 ax-icn 11186 ax-addcl 11187 ax-addrcl 11188 ax-mulcl 11189 ax-mulrcl 11190 ax-mulcom 11191 ax-addass 11192 ax-mulass 11193 ax-distr 11194 ax-i2m1 11195 ax-1ne0 11196 ax-1rid 11197 ax-rnegex 11198 ax-rrecex 11199 ax-cnre 11200 ax-pre-lttri 11201 ax-pre-lttrn 11202 ax-pre-ltadd 11203 ax-pre-mulgt0 11204 ax-pre-sup 11205 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1573 df-fal 1583 df-ex 1813 df-nf 1817 df-sb 2100 df-mo 2566 df-eu 2596 df-clab 2741 df-cleq 2754 df-clel 2837 df-nfc 2911 df-ne 2958 df-nel 3064 df-ral 3079 df-rex 3089 df-rmo 3367 df-reu 3368 df-rab 3415 df-v 3455 df-sbc 3743 df-csb 3851 df-dif 3905 df-un 3907 df-in 3909 df-ss 3919 df-pss 3922 df-nul 4283 df-if 4486 df-pw 4562 df-sn 4588 df-pr 4590 df-op 4594 df-uni 4871 df-iun 4956 df-br 5108 df-opab 5172 df-mpt 5191 df-tr 5217 df-id 5554 df-eprel 5559 df-po 5567 df-so 5568 df-fr 5612 df-we 5614 df-xp 5665 df-rel 5666 df-cnv 5667 df-co 5668 df-dm 5669 df-rn 5670 df-res 5671 df-ima 5672 df-pred 6303 df-ord 6364 df-on 6365 df-lim 6366 df-suc 6367 df-iota 6493 df-fun 6539 df-fn 6540 df-f 6541 df-f1 6542 df-fo 6543 df-f1o 6544 df-fv 6545 df-riota 7373 df-ov 7419 df-oprab 7420 df-mpo 7421 df-om 7866 df-2nd 7990 df-frecs 8283 df-wrecs 8314 df-recs 8363 df-rdg 8402 df-er 8699 df-en 8956 df-dom 8957 df-sdom 8958 df-sup 9415 df-inf 9416 df-pnf 11272 df-mnf 11273 df-xr 11274 df-ltxr 11275 df-le 11276 df-sub 11470 df-neg 11471 df-div 11899 df-nn 12261 df-n0 12532 df-z 12619 df-uz 12891 df-rp 13045 df-fl 13855 df-mod 13933 |
| This theorem is used by: mulmod0 13940 negmod0 13941 modid0 13960 2txmodxeq0 13997 addmodlteq 14012 dvdsval3 16350 mod2eq1n2dvds 16441 elqaalem2 26554 elqaalem3 26555 sineq0 26762 pellexlem6 43677 sineq0ALT 45761 oddfl 46113 dirker2re 46922 dirkerdenne0 46923 dirkertrigeqlem3 46930 dirkertrigeq 46931 dirkercncflem1 46933 dirkercncflem2 46934 dirkercncflem4 46936 fourierdlem24 46961 fourierswlem 47060 mod0mul 48252 dfeven3 48576 dfodd4 48577 dignn0fr 49533 digexp 49539 0dig2nn0e 49544 dignn0flhalflem1 49547 |
| Copyright terms: Public domain | W3C validator |