| Step |
Hyp |
Ref |
Expression |
| 1 |
|
recn |
|- ( A e. RR -> A e. CC ) |
| 2 |
1
|
3ad2ant1 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> A e. CC ) |
| 3 |
2
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> A e. CC ) |
| 4 |
|
simpl2 |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> B e. RR ) |
| 5 |
|
simpr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> M e. RR+ ) |
| 6 |
4 5
|
modcld |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( B mod M ) e. RR ) |
| 7 |
6
|
recnd |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( B mod M ) e. CC ) |
| 8 |
|
zcn |
|- ( C e. ZZ -> C e. CC ) |
| 9 |
8
|
3ad2ant3 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> C e. CC ) |
| 10 |
9
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> C e. CC ) |
| 11 |
7 10
|
mulcld |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( B mod M ) x. C ) e. CC ) |
| 12 |
3 11
|
addcomd |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( A + ( ( B mod M ) x. C ) ) = ( ( ( B mod M ) x. C ) + A ) ) |
| 13 |
12
|
oveq1d |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( A + ( ( B mod M ) x. C ) ) mod M ) = ( ( ( ( B mod M ) x. C ) + A ) mod M ) ) |
| 14 |
|
zre |
|- ( C e. ZZ -> C e. RR ) |
| 15 |
14
|
3ad2ant3 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> C e. RR ) |
| 16 |
15
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> C e. RR ) |
| 17 |
6 16
|
remulcld |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( B mod M ) x. C ) e. RR ) |
| 18 |
|
simpl |
|- ( ( B e. RR /\ C e. ZZ ) -> B e. RR ) |
| 19 |
14
|
adantl |
|- ( ( B e. RR /\ C e. ZZ ) -> C e. RR ) |
| 20 |
18 19
|
remulcld |
|- ( ( B e. RR /\ C e. ZZ ) -> ( B x. C ) e. RR ) |
| 21 |
20
|
3adant1 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> ( B x. C ) e. RR ) |
| 22 |
21
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( B x. C ) e. RR ) |
| 23 |
22 5
|
modcld |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( B x. C ) mod M ) e. RR ) |
| 24 |
|
simp1 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> A e. RR ) |
| 25 |
24
|
anim1i |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( A e. RR /\ M e. RR+ ) ) |
| 26 |
|
simpl3 |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> C e. ZZ ) |
| 27 |
|
modmulmod |
|- ( ( B e. RR /\ C e. ZZ /\ M e. RR+ ) -> ( ( ( B mod M ) x. C ) mod M ) = ( ( B x. C ) mod M ) ) |
| 28 |
4 26 5 27
|
syl3anc |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( B mod M ) x. C ) mod M ) = ( ( B x. C ) mod M ) ) |
| 29 |
|
remulcl |
|- ( ( B e. RR /\ C e. RR ) -> ( B x. C ) e. RR ) |
| 30 |
14 29
|
sylan2 |
|- ( ( B e. RR /\ C e. ZZ ) -> ( B x. C ) e. RR ) |
| 31 |
30
|
3adant1 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> ( B x. C ) e. RR ) |
| 32 |
|
modabs2 |
|- ( ( ( B x. C ) e. RR /\ M e. RR+ ) -> ( ( ( B x. C ) mod M ) mod M ) = ( ( B x. C ) mod M ) ) |
| 33 |
31 32
|
sylan |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( B x. C ) mod M ) mod M ) = ( ( B x. C ) mod M ) ) |
| 34 |
28 33
|
eqtr4d |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( B mod M ) x. C ) mod M ) = ( ( ( B x. C ) mod M ) mod M ) ) |
| 35 |
|
modadd1 |
|- ( ( ( ( ( B mod M ) x. C ) e. RR /\ ( ( B x. C ) mod M ) e. RR ) /\ ( A e. RR /\ M e. RR+ ) /\ ( ( ( B mod M ) x. C ) mod M ) = ( ( ( B x. C ) mod M ) mod M ) ) -> ( ( ( ( B mod M ) x. C ) + A ) mod M ) = ( ( ( ( B x. C ) mod M ) + A ) mod M ) ) |
| 36 |
17 23 25 34 35
|
syl211anc |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( ( B mod M ) x. C ) + A ) mod M ) = ( ( ( ( B x. C ) mod M ) + A ) mod M ) ) |
| 37 |
31
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( B x. C ) e. RR ) |
| 38 |
24
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> A e. RR ) |
| 39 |
|
modaddmod |
|- ( ( ( B x. C ) e. RR /\ A e. RR /\ M e. RR+ ) -> ( ( ( ( B x. C ) mod M ) + A ) mod M ) = ( ( ( B x. C ) + A ) mod M ) ) |
| 40 |
37 38 5 39
|
syl3anc |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( ( B x. C ) mod M ) + A ) mod M ) = ( ( ( B x. C ) + A ) mod M ) ) |
| 41 |
|
recn |
|- ( B e. RR -> B e. CC ) |
| 42 |
|
mulcl |
|- ( ( B e. CC /\ C e. CC ) -> ( B x. C ) e. CC ) |
| 43 |
41 8 42
|
syl2an |
|- ( ( B e. RR /\ C e. ZZ ) -> ( B x. C ) e. CC ) |
| 44 |
43
|
3adant1 |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> ( B x. C ) e. CC ) |
| 45 |
44 2
|
addcomd |
|- ( ( A e. RR /\ B e. RR /\ C e. ZZ ) -> ( ( B x. C ) + A ) = ( A + ( B x. C ) ) ) |
| 46 |
45
|
adantr |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( B x. C ) + A ) = ( A + ( B x. C ) ) ) |
| 47 |
46
|
oveq1d |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( B x. C ) + A ) mod M ) = ( ( A + ( B x. C ) ) mod M ) ) |
| 48 |
40 47
|
eqtrd |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( ( ( B x. C ) mod M ) + A ) mod M ) = ( ( A + ( B x. C ) ) mod M ) ) |
| 49 |
13 36 48
|
3eqtrd |
|- ( ( ( A e. RR /\ B e. RR /\ C e. ZZ ) /\ M e. RR+ ) -> ( ( A + ( ( B mod M ) x. C ) ) mod M ) = ( ( A + ( B x. C ) ) mod M ) ) |