ILE Home Intuitionistic Logic Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  ILE Home  >  Th. List  >  modqdi GIF version

Theorem modqdi 9342
Description: Distribute multiplication over a modulo operation. (Contributed by Jim Kingdon, 26-Oct-2021.)
Assertion
Ref Expression
modqdi (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 mod 𝐶)) = ((𝐴 · 𝐵) mod (𝐴 · 𝐶)))

Proof of Theorem modqdi
StepHypRef Expression
1 simp1l 939 . . . . 5 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐴 ∈ ℚ)
2 qcn 8666 . . . . 5 (𝐴 ∈ ℚ → 𝐴 ∈ ℂ)
31, 2syl 14 . . . 4 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐴 ∈ ℂ)
4 simp2 916 . . . . 5 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐵 ∈ ℚ)
5 qcn 8666 . . . . 5 (𝐵 ∈ ℚ → 𝐵 ∈ ℂ)
64, 5syl 14 . . . 4 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐵 ∈ ℂ)
7 simp3l 943 . . . . . 6 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐶 ∈ ℚ)
8 simp3r 944 . . . . . . . . . 10 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 0 < 𝐶)
98gt0ne0d 7578 . . . . . . . . 9 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐶 ≠ 0)
10 qdivcl 8675 . . . . . . . . 9 ((𝐵 ∈ ℚ ∧ 𝐶 ∈ ℚ ∧ 𝐶 ≠ 0) → (𝐵 / 𝐶) ∈ ℚ)
114, 7, 9, 10syl3anc 1146 . . . . . . . 8 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐵 / 𝐶) ∈ ℚ)
1211flqcld 9227 . . . . . . 7 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (⌊‘(𝐵 / 𝐶)) ∈ ℤ)
13 zq 8658 . . . . . . 7 ((⌊‘(𝐵 / 𝐶)) ∈ ℤ → (⌊‘(𝐵 / 𝐶)) ∈ ℚ)
1412, 13syl 14 . . . . . 6 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (⌊‘(𝐵 / 𝐶)) ∈ ℚ)
15 qmulcl 8669 . . . . . 6 ((𝐶 ∈ ℚ ∧ (⌊‘(𝐵 / 𝐶)) ∈ ℚ) → (𝐶 · (⌊‘(𝐵 / 𝐶))) ∈ ℚ)
167, 14, 15syl2anc 397 . . . . 5 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐶 · (⌊‘(𝐵 / 𝐶))) ∈ ℚ)
17 qcn 8666 . . . . 5 ((𝐶 · (⌊‘(𝐵 / 𝐶))) ∈ ℚ → (𝐶 · (⌊‘(𝐵 / 𝐶))) ∈ ℂ)
1816, 17syl 14 . . . 4 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐶 · (⌊‘(𝐵 / 𝐶))) ∈ ℂ)
193, 6, 18subdid 7483 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 − (𝐶 · (⌊‘(𝐵 / 𝐶))))) = ((𝐴 · 𝐵) − (𝐴 · (𝐶 · (⌊‘(𝐵 / 𝐶))))))
20 qcn 8666 . . . . . . . . 9 (𝐶 ∈ ℚ → 𝐶 ∈ ℂ)
217, 20syl 14 . . . . . . . 8 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐶 ∈ ℂ)
22 qre 8657 . . . . . . . . . 10 (𝐶 ∈ ℚ → 𝐶 ∈ ℝ)
237, 22syl 14 . . . . . . . . 9 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐶 ∈ ℝ)
2423, 8gt0ap0d 7693 . . . . . . . 8 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐶 # 0)
25 qre 8657 . . . . . . . . . 10 (𝐴 ∈ ℚ → 𝐴 ∈ ℝ)
261, 25syl 14 . . . . . . . . 9 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐴 ∈ ℝ)
27 simp1r 940 . . . . . . . . 9 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 0 < 𝐴)
2826, 27gt0ap0d 7693 . . . . . . . 8 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 𝐴 # 0)
296, 21, 3, 24, 28divcanap5d 7866 . . . . . . 7 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐴 · 𝐵) / (𝐴 · 𝐶)) = (𝐵 / 𝐶))
3029fveq2d 5210 . . . . . 6 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶))) = (⌊‘(𝐵 / 𝐶)))
3130oveq2d 5556 . . . . 5 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶)))) = ((𝐴 · 𝐶) · (⌊‘(𝐵 / 𝐶))))
3212zcnd 8420 . . . . . 6 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (⌊‘(𝐵 / 𝐶)) ∈ ℂ)
333, 21, 32mulassd 7108 . . . . 5 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐴 · 𝐶) · (⌊‘(𝐵 / 𝐶))) = (𝐴 · (𝐶 · (⌊‘(𝐵 / 𝐶)))))
3431, 33eqtr2d 2089 . . . 4 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐶 · (⌊‘(𝐵 / 𝐶)))) = ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶)))))
3534oveq2d 5556 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐴 · 𝐵) − (𝐴 · (𝐶 · (⌊‘(𝐵 / 𝐶))))) = ((𝐴 · 𝐵) − ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶))))))
3619, 35eqtrd 2088 . 2 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 − (𝐶 · (⌊‘(𝐵 / 𝐶))))) = ((𝐴 · 𝐵) − ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶))))))
37 modqval 9274 . . . 4 ((𝐵 ∈ ℚ ∧ 𝐶 ∈ ℚ ∧ 0 < 𝐶) → (𝐵 mod 𝐶) = (𝐵 − (𝐶 · (⌊‘(𝐵 / 𝐶)))))
384, 7, 8, 37syl3anc 1146 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐵 mod 𝐶) = (𝐵 − (𝐶 · (⌊‘(𝐵 / 𝐶)))))
3938oveq2d 5556 . 2 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 mod 𝐶)) = (𝐴 · (𝐵 − (𝐶 · (⌊‘(𝐵 / 𝐶))))))
40 qmulcl 8669 . . . 4 ((𝐴 ∈ ℚ ∧ 𝐵 ∈ ℚ) → (𝐴 · 𝐵) ∈ ℚ)
411, 4, 40syl2anc 397 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · 𝐵) ∈ ℚ)
42 qmulcl 8669 . . . 4 ((𝐴 ∈ ℚ ∧ 𝐶 ∈ ℚ) → (𝐴 · 𝐶) ∈ ℚ)
431, 7, 42syl2anc 397 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · 𝐶) ∈ ℚ)
4426, 23, 27, 8mulgt0d 7198 . . 3 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → 0 < (𝐴 · 𝐶))
45 modqval 9274 . . 3 (((𝐴 · 𝐵) ∈ ℚ ∧ (𝐴 · 𝐶) ∈ ℚ ∧ 0 < (𝐴 · 𝐶)) → ((𝐴 · 𝐵) mod (𝐴 · 𝐶)) = ((𝐴 · 𝐵) − ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶))))))
4641, 43, 44, 45syl3anc 1146 . 2 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → ((𝐴 · 𝐵) mod (𝐴 · 𝐶)) = ((𝐴 · 𝐵) − ((𝐴 · 𝐶) · (⌊‘((𝐴 · 𝐵) / (𝐴 · 𝐶))))))
4736, 39, 463eqtr4d 2098 1 (((𝐴 ∈ ℚ ∧ 0 < 𝐴) ∧ 𝐵 ∈ ℚ ∧ (𝐶 ∈ ℚ ∧ 0 < 𝐶)) → (𝐴 · (𝐵 mod 𝐶)) = ((𝐴 · 𝐵) mod (𝐴 · 𝐶)))
Colors of variables: wff set class
Syntax hints:  wi 4  wa 101  w3a 896   = wceq 1259  wcel 1409  wne 2220   class class class wbr 3792  cfv 4930  (class class class)co 5540  cc 6945  cr 6946  0cc0 6947   · cmul 6952   < clt 7119  cmin 7245   / cdiv 7725  cz 8302  cq 8651  cfl 9220   mod cmo 9272
This theorem was proved from axioms:  ax-1 5  ax-2 6  ax-mp 7  ax-ia1 103  ax-ia2 104  ax-ia3 105  ax-in1 554  ax-in2 555  ax-io 640  ax-5 1352  ax-7 1353  ax-gen 1354  ax-ie1 1398  ax-ie2 1399  ax-8 1411  ax-10 1412  ax-11 1413  ax-i12 1414  ax-bndl 1415  ax-4 1416  ax-13 1420  ax-14 1421  ax-17 1435  ax-i9 1439  ax-ial 1443  ax-i5r 1444  ax-ext 2038  ax-coll 3900  ax-sep 3903  ax-nul 3911  ax-pow 3955  ax-pr 3972  ax-un 4198  ax-setind 4290  ax-iinf 4339  ax-cnex 7033  ax-resscn 7034  ax-1cn 7035  ax-1re 7036  ax-icn 7037  ax-addcl 7038  ax-addrcl 7039  ax-mulcl 7040  ax-mulrcl 7041  ax-addcom 7042  ax-mulcom 7043  ax-addass 7044  ax-mulass 7045  ax-distr 7046  ax-i2m1 7047  ax-1rid 7049  ax-0id 7050  ax-rnegex 7051  ax-precex 7052  ax-cnre 7053  ax-pre-ltirr 7054  ax-pre-ltwlin 7055  ax-pre-lttrn 7056  ax-pre-apti 7057  ax-pre-ltadd 7058  ax-pre-mulgt0 7059  ax-pre-mulext 7060  ax-arch 7061
This theorem depends on definitions:  df-bi 114  df-dc 754  df-3or 897  df-3an 898  df-tru 1262  df-fal 1265  df-nf 1366  df-sb 1662  df-eu 1919  df-mo 1920  df-clab 2043  df-cleq 2049  df-clel 2052  df-nfc 2183  df-ne 2221  df-nel 2315  df-ral 2328  df-rex 2329  df-reu 2330  df-rmo 2331  df-rab 2332  df-v 2576  df-sbc 2788  df-csb 2881  df-dif 2948  df-un 2950  df-in 2952  df-ss 2959  df-nul 3253  df-pw 3389  df-sn 3409  df-pr 3410  df-op 3412  df-uni 3609  df-int 3644  df-iun 3687  df-br 3793  df-opab 3847  df-mpt 3848  df-tr 3883  df-eprel 4054  df-id 4058  df-po 4061  df-iso 4062  df-iord 4131  df-on 4133  df-suc 4136  df-iom 4342  df-xp 4379  df-rel 4380  df-cnv 4381  df-co 4382  df-dm 4383  df-rn 4384  df-res 4385  df-ima 4386  df-iota 4895  df-fun 4932  df-fn 4933  df-f 4934  df-f1 4935  df-fo 4936  df-f1o 4937  df-fv 4938  df-riota 5496  df-ov 5543  df-oprab 5544  df-mpt2 5545  df-1st 5795  df-2nd 5796  df-recs 5951  df-irdg 5988  df-1o 6032  df-2o 6033  df-oadd 6036  df-omul 6037  df-er 6137  df-ec 6139  df-qs 6143  df-ni 6460  df-pli 6461  df-mi 6462  df-lti 6463  df-plpq 6500  df-mpq 6501  df-enq 6503  df-nqqs 6504  df-plqqs 6505  df-mqqs 6506  df-1nqqs 6507  df-rq 6508  df-ltnqqs 6509  df-enq0 6580  df-nq0 6581  df-0nq0 6582  df-plq0 6583  df-mq0 6584  df-inp 6622  df-i1p 6623  df-iplp 6624  df-iltp 6626  df-enr 6869  df-nr 6870  df-ltr 6873  df-0r 6874  df-1r 6875  df-0 6954  df-1 6955  df-r 6957  df-lt 6960  df-pnf 7121  df-mnf 7122  df-xr 7123  df-ltxr 7124  df-le 7125  df-sub 7247  df-neg 7248  df-reap 7640  df-ap 7647  df-div 7726  df-inn 7991  df-n0 8240  df-z 8303  df-q 8652  df-rp 8682  df-fl 9222  df-mod 9273
This theorem is referenced by: (None)
  Copyright terms: Public domain W3C validator