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

Theorem modaddmulmod 14108
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 11317 . . . . . 6 (𝐴 ∈ ℝ → 𝐴 ∈ ℂ)
213ad2ant1 1151 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℂ)
32adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℂ)
4 simpl2 1211 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐵 ∈ ℝ)
5 simpr 490 . . . . . . 7 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝑀 ∈ ℝ+)
64, 5modcld 14042 . . . . . 6 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℝ)
76recnd 11364 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 mod 𝑀) ∈ ℂ)
8 zcn 12725 . . . . . . 7 (𝐶 ∈ ℤ → 𝐶 ∈ ℂ)
983ad2ant3 1153 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℂ)
109adantr 486 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℂ)
117, 10mulcld 11356 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℂ)
123, 11addcomd 11539 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 + ((𝐵 mod 𝑀) · 𝐶)) = (((𝐵 mod 𝑀) · 𝐶) + 𝐴))
1312oveq1d 7458 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀))
14 zre 12724 . . . . . 6 (𝐶 ∈ ℤ → 𝐶 ∈ ℝ)
15143ad2ant3 1153 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
1615adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℝ)
176, 16remulcld 11366 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 mod 𝑀) · 𝐶) ∈ ℝ)
18 simpl 488 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐵 ∈ ℝ)
1914adantl 487 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈ ℝ)
2018, 19remulcld 11366 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
21203adant1 1148 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
2221adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
2322, 5modcld 14042 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ)
24 simp1 1154 . . . 4 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈ ℝ)
2524anim1i 627 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+))
26 simpl3 1212 . . . . 5 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐶 ∈ ℤ)
27 modmulmod 14106 . . . . 5 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
284, 26, 5, 27syl3anc 1399 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
29 remulcl 11312 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℝ) → (𝐵 · 𝐶) ∈ ℝ)
3014, 29sylan2 605 . . . . . 6 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
31303adant1 1148 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ)
32 modabs2 14072 . . . . 5 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3331, 32sylan 592 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀))
3428, 33eqtr4d 2801 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀))
35 modadd1 14075 . . 3 (((((𝐵 mod 𝑀) · 𝐶) ∈ ℝ ∧ ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ) ∧ (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) ∧ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀)) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3617, 23, 25, 34, 35syl211anc 1404 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀))
3731adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (𝐵 · 𝐶) ∈ ℝ)
3824adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → 𝐴 ∈ ℝ)
39 modaddmod 14079 . . . 4 (((𝐵 · 𝐶) ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
4037, 38, 5, 39syl3anc 1399 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀))
41 recn 11317 . . . . . . . 8 (𝐵 ∈ ℝ → 𝐵 ∈ ℂ)
42 mulcl 11311 . . . . . . . 8 ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 · 𝐶) ∈ ℂ)
4341, 8, 42syl2an 608 . . . . . . 7 ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
44433adant1 1148 . . . . . 6 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ)
4544, 2addcomd 11539 . . . . 5 ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4645adantr 486 . . . 4 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶)))
4746oveq1d 7458 . . 3 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4840, 47eqtrd 2798 . 2 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
4913, 36, 483eqtrd 2802 1 (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+) → ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀))
Colors of variables:    wff setvar class
This proof depends on syntax axioms:   → wi 4   ∧ wa 401   ∧ w3a 1103   = wceq 1570   ∈ wcel 2147  (class class class)co 7443  ℂcc 11225  ℝcr 11226   + caddc 11230   · cmul 11232  ℤcz 12720  ℝ+crp 13147   mod cmo 14036
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 1945  ax-6 2002  ax-7 2043  ax-8 2149  ax-9 2157  ax-10 2180  ax-11 2197  ax-12 2216  ax-ext 2735  ax-sep 5252  ax-nul 5263  ax-pow 5331  ax-pr 5395  ax-un 7775  ax-cnex 11283  ax-resscn 11284  ax-1cn 11285  ax-icn 11286  ax-addcl 11287  ax-addrcl 11288  ax-mulcl 11289  ax-mulrcl 11290  ax-mulcom 11291  ax-addass 11292  ax-mulass 11293  ax-distr 11294  ax-i2m1 11295  ax-1ne0 11296  ax-1rid 11297  ax-rnegex 11298  ax-rrecex 11299  ax-cnre 11300  ax-pre-lttri 11301  ax-pre-lttrn 11302  ax-pre-ltadd 11303  ax-pre-mulgt0 11304  ax-pre-sup 11305
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 2102  df-mo 2567  df-eu 2597  df-clab 2742  df-cleq 2755  df-clel 2839  df-nfc 2913  df-ne 2960  df-nel 3066  df-ral 3081  df-rex 3091  df-rmo 3369  df-reu 3370  df-rab 3417  df-v 3456  df-sbc 3743  df-csb 3852  df-ss 3901  df-pss 4017  df-dif 4050  df-in 4094  df-un 4154  df-nul 4282  df-if 4486  df-pw 4562  df-sn 4589  df-pr 4591  df-op 4839  df-uni 4871  df-iun 4956  df-br 5107  df-opab 5171  df-mpt 5190  df-tr 5216  df-id 5550  df-eprel 5555  df-po 5563  df-so 5564  df-fr 5608  df-we 5610  df-xp 5661  df-rel 5662  df-cnv 5663  df-co 5664  df-dm 5665  df-rn 5666  df-res 5667  df-ima 5668  df-pred 6322  df-ord 6383  df-on 6384  df-lim 6385  df-suc 6386  df-iota 6512  df-fun 6560  df-fn 6561  df-f 6562  df-f1 6563  df-fo 6564  df-f1o 6565  df-fv 6566  df-riota 7400  df-ov 7446  df-oprab 7447  df-mpo 7448  df-om 7902  df-2nd 8026  df-frecs 8327  df-wrecs 8358  df-recs 8407  df-rdg 8446  df-er 8745  df-en 9002  df-dom 9003  df-sdom 9004  df-sup 9461  df-inf 9462  df-pnf 11372  df-mnf 11373  df-xr 11374  df-ltxr 11375  df-le 11376  df-sub 11570  df-neg 11571  df-div 12001  df-nn 12363  df-n0 12634  df-z 12721  df-uz 12993  df-rp 13148  df-fl 13959  df-mod 14037
This theorem is used by:  modprm0  17012  modprmn0modprm0  17014
  Copyright terms: Public domain W3C validator