Proof of Theorem modaddmulmod
Step | Hyp | Ref
| Expression |
1 | | recn 10945 |
. . . . . 6
⊢ (𝐴 ∈ ℝ → 𝐴 ∈
ℂ) |
2 | 1 | 3ad2ant1 1131 |
. . . . 5
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈
ℂ) |
3 | 2 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐴 ∈
ℂ) |
4 | | simpl2 1190 |
. . . . . . 7
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐵 ∈
ℝ) |
5 | | simpr 484 |
. . . . . . 7
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝑀 ∈
ℝ+) |
6 | 4, 5 | modcld 13576 |
. . . . . 6
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐵 mod 𝑀) ∈
ℝ) |
7 | 6 | recnd 10987 |
. . . . 5
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐵 mod 𝑀) ∈
ℂ) |
8 | | zcn 12307 |
. . . . . . 7
⊢ (𝐶 ∈ ℤ → 𝐶 ∈
ℂ) |
9 | 8 | 3ad2ant3 1133 |
. . . . . 6
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈
ℂ) |
10 | 9 | adantr 480 |
. . . . 5
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐶 ∈
ℂ) |
11 | 7, 10 | mulcld 10979 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐵 mod 𝑀) · 𝐶) ∈ ℂ) |
12 | 3, 11 | addcomd 11160 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐴 + ((𝐵 mod 𝑀) · 𝐶)) = (((𝐵 mod 𝑀) · 𝐶) + 𝐴)) |
13 | 12 | oveq1d 7283 |
. 2
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀)) |
14 | | zre 12306 |
. . . . . 6
⊢ (𝐶 ∈ ℤ → 𝐶 ∈
ℝ) |
15 | 14 | 3ad2ant3 1133 |
. . . . 5
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈
ℝ) |
16 | 15 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐶 ∈
ℝ) |
17 | 6, 16 | remulcld 10989 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐵 mod 𝑀) · 𝐶) ∈ ℝ) |
18 | | simpl 482 |
. . . . . . 7
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐵 ∈
ℝ) |
19 | 14 | adantl 481 |
. . . . . . 7
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐶 ∈
ℝ) |
20 | 18, 19 | remulcld 10989 |
. . . . . 6
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ) |
21 | 20 | 3adant1 1128 |
. . . . 5
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ) |
22 | 21 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐵 · 𝐶) ∈
ℝ) |
23 | 22, 5 | modcld 13576 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ) |
24 | | simp1 1134 |
. . . 4
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → 𝐴 ∈
ℝ) |
25 | 24 | anim1i 614 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐴 ∈ ℝ
∧ 𝑀 ∈
ℝ+)) |
26 | | simpl3 1191 |
. . . . 5
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐶 ∈
ℤ) |
27 | | modmulmod 13637 |
. . . . 5
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ ∧ 𝑀 ∈ ℝ+)
→ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀)) |
28 | 4, 26, 5, 27 | syl3anc 1369 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀)) |
29 | | remulcl 10940 |
. . . . . . 7
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℝ) → (𝐵 · 𝐶) ∈ ℝ) |
30 | 14, 29 | sylan2 592 |
. . . . . 6
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ) |
31 | 30 | 3adant1 1128 |
. . . . 5
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℝ) |
32 | | modabs2 13606 |
. . . . 5
⊢ (((𝐵 · 𝐶) ∈ ℝ ∧ 𝑀 ∈ ℝ+) → (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀)) |
33 | 31, 32 | sylan 579 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (((𝐵 · 𝐶) mod 𝑀) mod 𝑀) = ((𝐵 · 𝐶) mod 𝑀)) |
34 | 28, 33 | eqtr4d 2782 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀)) |
35 | | modadd1 13609 |
. . 3
⊢
(((((𝐵 mod 𝑀) · 𝐶) ∈ ℝ ∧ ((𝐵 · 𝐶) mod 𝑀) ∈ ℝ) ∧ (𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) ∧ (((𝐵 mod 𝑀) · 𝐶) mod 𝑀) = (((𝐵 · 𝐶) mod 𝑀) mod 𝑀)) → ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀)) |
36 | 17, 23, 25, 34, 35 | syl211anc 1374 |
. 2
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((((𝐵 mod 𝑀) · 𝐶) + 𝐴) mod 𝑀) = ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀)) |
37 | 31 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (𝐵 · 𝐶) ∈
ℝ) |
38 | 24 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ 𝐴 ∈
ℝ) |
39 | | modaddmod 13611 |
. . . 4
⊢ (((𝐵 · 𝐶) ∈ ℝ ∧ 𝐴 ∈ ℝ ∧ 𝑀 ∈ ℝ+) →
((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀)) |
40 | 37, 38, 5, 39 | syl3anc 1369 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = (((𝐵 · 𝐶) + 𝐴) mod 𝑀)) |
41 | | recn 10945 |
. . . . . . . 8
⊢ (𝐵 ∈ ℝ → 𝐵 ∈
ℂ) |
42 | | mulcl 10939 |
. . . . . . . 8
⊢ ((𝐵 ∈ ℂ ∧ 𝐶 ∈ ℂ) → (𝐵 · 𝐶) ∈ ℂ) |
43 | 41, 8, 42 | syl2an 595 |
. . . . . . 7
⊢ ((𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ) |
44 | 43 | 3adant1 1128 |
. . . . . 6
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → (𝐵 · 𝐶) ∈ ℂ) |
45 | 44, 2 | addcomd 11160 |
. . . . 5
⊢ ((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) → ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶))) |
46 | 45 | adantr 480 |
. . . 4
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐵 · 𝐶) + 𝐴) = (𝐴 + (𝐵 · 𝐶))) |
47 | 46 | oveq1d 7283 |
. . 3
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ (((𝐵 · 𝐶) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀)) |
48 | 40, 47 | eqtrd 2779 |
. 2
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((((𝐵 · 𝐶) mod 𝑀) + 𝐴) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀)) |
49 | 13, 36, 48 | 3eqtrd 2783 |
1
⊢ (((𝐴 ∈ ℝ ∧ 𝐵 ∈ ℝ ∧ 𝐶 ∈ ℤ) ∧ 𝑀 ∈ ℝ+)
→ ((𝐴 + ((𝐵 mod 𝑀) · 𝐶)) mod 𝑀) = ((𝐴 + (𝐵 · 𝐶)) mod 𝑀)) |