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

Theorem modaddmulmod 13305
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 10620 . . . . . 6 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
213ad2ant1 1130 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℂ)
32adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℂ)
4 simpl2 1189 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐵 ∈ ℝ)
5 simpr 488 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝑀 ∈ ℝ+)
64, 5modcld 13242 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℝ)
76recnd 10662 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℂ)
8 zcn 11978 . . . . . . 7 (𝐶 ∈ ℤ → 𝐶 ∈ ℂ)
983ad2ant3 1132 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℂ)
109adantr 484 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℂ)
117, 10mulcld 10654 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℂ)
123, 11addcomd 10835 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 + ((𝐵 mod 𝑀) · 𝐶)) = (((𝐵 mod 𝑀) · 𝐶) + 𝐴))
1312oveq1d 7154 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀))
14 zre 11977 . . . . . 6 (𝐶 ∈ ℤ → 𝐶 ∈ ℝ)
15143ad2ant3 1132 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
1615adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℝ)
176, 16remulcld 10664 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℝ)
18 simpl 486 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐵 ∈ ℝ)
1914adantl 485 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
2018, 19remulcld 10664 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
21203adant1 1127 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
2221adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
2322, 5modcld 13242 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ)
24 simp1 1133 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℝ)
2524anim1i 617 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+))
26 simpl3 1190 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℤ)
27 modmulmod 13303 . . . . 5 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
284, 26, 5, 27syl3anc 1368 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
29 remulcl 10615 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℝ) → (𝐵 · 𝐶) ∈ ℝ)
3014, 29sylan2 595 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
31303adant1 1127 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
32 modabs2 13272 . . . . 5 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3331, 32sylan 583 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3428, 33eqtr4d 2839 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀))
35 modadd1 13275 . . 3 (((((𝐵 mod 𝑀) · 𝐶) ∈ ℝ ∧ ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ) ∧ (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) ∧ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀)) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3617, 23, 25, 34, 35syl211anc 1373 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3731adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
3824adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℝ)
39 modaddmod 13277 . . . 4 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
4037, 38, 5, 39syl3anc 1368 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
41 recn 10620 . . . . . . . 8 (𝐵 ∈ ℝ → 𝐵 ∈ ℂ)
42 mulcl 10614 . . . . . . . 8 ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 · 𝐶) ∈ ℂ)
4341, 8, 42syl2an 598 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
44433adant1 1127 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
4544, 2addcomd 10835 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4645adantr 484 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4746oveq1d 7154 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4840, 47eqtrd 2836 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4913, 36, 483eqtrd 2840 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 399  w3a 1084   = wceq 1538  wcel 2112  (class class class)co 7139  cc 10528  cr 10529   + caddc 10533   · cmul 10535  cz 11973  +crp 12381   mod cmo 13236
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 1911  ax-6 1970  ax-7 2015  ax-8 2114  ax-9 2122  ax-10 2143  ax-11 2159  ax-12 2176  ax-ext 2773  ax-sep 5170  ax-nul 5177  ax-pow 5234  ax-pr 5298  ax-un 7445  ax-cnex 10586  ax-resscn 10587  ax-1cn 10588  ax-icn 10589  ax-addcl 10590  ax-addrcl 10591  ax-mulcl 10592  ax-mulrcl 10593  ax-mulcom 10594  ax-addass 10595  ax-mulass 10596  ax-distr 10597  ax-i2m1 10598  ax-1ne0 10599  ax-1rid 10600  ax-rnegex 10601  ax-rrecex 10602  ax-cnre 10603  ax-pre-lttri 10604  ax-pre-lttrn 10605  ax-pre-ltadd 10606  ax-pre-mulgt0 10607  ax-pre-sup 10608
This theorem depends on definitions:  df-bi 210  df-an 400  df-or 845  df-3or 1085  df-3an 1086  df-tru 1541  df-ex 1782  df-nf 1786  df-sb 2070  df-mo 2601  df-eu 2632  df-clab 2780  df-cleq 2794  df-clel 2873  df-nfc 2941  df-ne 2991  df-nel 3095  df-ral 3114  df-rex 3115  df-reu 3116  df-rmo 3117  df-rab 3118  df-v 3446  df-sbc 3724  df-csb 3832  df-dif 3887  df-un 3889  df-in 3891  df-ss 3901  df-pss 3903  df-nul 4247  df-if 4429  df-pw 4502  df-sn 4529  df-pr 4531  df-tp 4533  df-op 4535  df-uni 4804  df-iun 4886  df-br 5034  df-opab 5096  df-mpt 5114  df-tr 5140  df-id 5428  df-eprel 5433  df-po 5442  df-so 5443  df-fr 5482  df-we 5484  df-xp 5529  df-rel 5530  df-cnv 5531  df-co 5532  df-dm 5533  df-rn 5534  df-res 5535  df-ima 5536  df-pred 6120  df-ord 6166  df-on 6167  df-lim 6168  df-suc 6169  df-iota 6287  df-fun 6330  df-fn 6331  df-f 6332  df-f1 6333  df-fo 6334  df-f1o 6335  df-fv 6336  df-riota 7097  df-ov 7142  df-oprab 7143  df-mpo 7144  df-om 7565  df-wrecs 7934  df-recs 7995  df-rdg 8033  df-er 8276  df-en 8497  df-dom 8498  df-sdom 8499  df-sup 8894  df-inf 8895  df-pnf 10670  df-mnf 10671  df-xr 10672  df-ltxr 10673  df-le 10674  df-sub 10865  df-neg 10866  df-div 11291  df-nn 11630  df-n0 11890  df-z 11974  df-uz 12236  df-rp 12382  df-fl 13161  df-mod 13237
This theorem is referenced by:  modprm0  16135  modprmn0modprm0  16137
  Copyright terms: Public domain W3C validator