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

Theorem modaddmulmod 13900
Description: The sum of a real number and the product of a second real number modulo a positive real number and an integer equals the sum of the real number and the product of the other real number and the integer modulo the positive real number. (Contributed by Alexander van der Vekens, 17-May-2018.)
Assertion
Ref Expression
modaddmulmod (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))

Proof of Theorem modaddmulmod
StepHypRef Expression
1 recn 11128 . . . . . 6 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
213ad2ant1 1134 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℂ)
32adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℂ)
4 simpl2 1194 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐵 ∈ ℝ)
5 simpr 484 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝑀 ∈ ℝ+)
64, 5modcld 13834 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℝ)
76recnd 11173 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℂ)
8 zcn 12529 . . . . . . 7 (𝐶 ∈ ℤ → 𝐶 ∈ ℂ)
983ad2ant3 1136 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℂ)
109adantr 480 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℂ)
117, 10mulcld 11165 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℂ)
123, 11addcomd 11348 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 + ((𝐵 mod 𝑀) · 𝐶)) = (((𝐵 mod 𝑀) · 𝐶) + 𝐴))
1312oveq1d 7382 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀))
14 zre 12528 . . . . . 6 (𝐶 ∈ ℤ → 𝐶 ∈ ℝ)
15143ad2ant3 1136 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
1615adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℝ)
176, 16remulcld 11175 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℝ)
18 simpl 482 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐵 ∈ ℝ)
1914adantl 481 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
2018, 19remulcld 11175 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
21203adant1 1131 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
2221adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
2322, 5modcld 13834 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ)
24 simp1 1137 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℝ)
2524anim1i 616 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+))
26 simpl3 1195 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℤ)
27 modmulmod 13898 . . . . 5 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
284, 26, 5, 27syl3anc 1374 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
29 remulcl 11123 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℝ) → (𝐵 · 𝐶) ∈ ℝ)
3014, 29sylan2 594 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
31303adant1 1131 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
32 modabs2 13864 . . . . 5 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3331, 32sylan 581 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3428, 33eqtr4d 2775 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀))
35 modadd1 13867 . . 3 (((((𝐵 mod 𝑀) · 𝐶) ∈ ℝ ∧ ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ) ∧ (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) ∧ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀)) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3617, 23, 25, 34, 35syl211anc 1379 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3731adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
3824adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℝ)
39 modaddmod 13871 . . . 4 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
4037, 38, 5, 39syl3anc 1374 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
41 recn 11128 . . . . . . . 8 (𝐵 ∈ ℝ → 𝐵 ∈ ℂ)
42 mulcl 11122 . . . . . . . 8 ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 · 𝐶) ∈ ℂ)
4341, 8, 42syl2an 597 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
44433adant1 1131 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
4544, 2addcomd 11348 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4645adantr 480 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4746oveq1d 7382 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4840, 47eqtrd 2772 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4913, 36, 483eqtrd 2776 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 395  w3a 1087   = wceq 1542  wcel 2114  (class class class)co 7367  cc 11036  cr 11037   + caddc 11041   · cmul 11043  cz 12524  +crp 12942   mod cmo 13828
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 5232  ax-nul 5242  ax-pow 5308  ax-pr 5376  ax-un 7689  ax-cnex 11094  ax-resscn 11095  ax-1cn 11096  ax-icn 11097  ax-addcl 11098  ax-addrcl 11099  ax-mulcl 11100  ax-mulrcl 11101  ax-mulcom 11102  ax-addass 11103  ax-mulass 11104  ax-distr 11105  ax-i2m1 11106  ax-1ne0 11107  ax-1rid 11108  ax-rnegex 11109  ax-rrecex 11110  ax-cnre 11111  ax-pre-lttri 11112  ax-pre-lttrn 11113  ax-pre-ltadd 11114  ax-pre-mulgt0 11115  ax-pre-sup 11116
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 3063  df-rmo 3343  df-reu 3344  df-rab 3391  df-v 3432  df-sbc 3730  df-csb 3839  df-dif 3893  df-un 3895  df-in 3897  df-ss 3907  df-pss 3910  df-nul 4275  df-if 4468  df-pw 4544  df-sn 4569  df-pr 4571  df-op 4575  df-uni 4852  df-iun 4936  df-br 5087  df-opab 5149  df-mpt 5168  df-tr 5194  df-id 5526  df-eprel 5531  df-po 5539  df-so 5540  df-fr 5584  df-we 5586  df-xp 5637  df-rel 5638  df-cnv 5639  df-co 5640  df-dm 5641  df-rn 5642  df-res 5643  df-ima 5644  df-pred 6266  df-ord 6327  df-on 6328  df-lim 6329  df-suc 6330  df-iota 6455  df-fun 6501  df-fn 6502  df-f 6503  df-f1 6504  df-fo 6505  df-f1o 6506  df-fv 6507  df-riota 7324  df-ov 7370  df-oprab 7371  df-mpo 7372  df-om 7818  df-2nd 7943  df-frecs 8231  df-wrecs 8262  df-recs 8311  df-rdg 8349  df-er 8643  df-en 8894  df-dom 8895  df-sdom 8896  df-sup 9355  df-inf 9356  df-pnf 11181  df-mnf 11182  df-xr 11183  df-ltxr 11184  df-le 11185  df-sub 11379  df-neg 11380  df-div 11808  df-nn 12175  df-n0 12438  df-z 12525  df-uz 12789  df-rp 12943  df-fl 13751  df-mod 13829
This theorem is referenced by:  modprm0  16776  modprmn0modprm0  16778
  Copyright terms: Public domain W3C validator