Step |
Hyp |
Ref |
Expression |
1 |
|
xadddi |
|- ( ( C e. RR /\ A e. RR* /\ B e. RR* ) -> ( C *e ( A +e B ) ) = ( ( C *e A ) +e ( C *e B ) ) ) |
2 |
1
|
3coml |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( C *e ( A +e B ) ) = ( ( C *e A ) +e ( C *e B ) ) ) |
3 |
|
xaddcl |
|- ( ( A e. RR* /\ B e. RR* ) -> ( A +e B ) e. RR* ) |
4 |
3
|
3adant3 |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( A +e B ) e. RR* ) |
5 |
|
rexr |
|- ( C e. RR -> C e. RR* ) |
6 |
5
|
3ad2ant3 |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> C e. RR* ) |
7 |
|
xmulcom |
|- ( ( ( A +e B ) e. RR* /\ C e. RR* ) -> ( ( A +e B ) *e C ) = ( C *e ( A +e B ) ) ) |
8 |
4 6 7
|
syl2anc |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( ( A +e B ) *e C ) = ( C *e ( A +e B ) ) ) |
9 |
|
simp1 |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> A e. RR* ) |
10 |
|
xmulcom |
|- ( ( A e. RR* /\ C e. RR* ) -> ( A *e C ) = ( C *e A ) ) |
11 |
9 6 10
|
syl2anc |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( A *e C ) = ( C *e A ) ) |
12 |
|
simp2 |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> B e. RR* ) |
13 |
|
xmulcom |
|- ( ( B e. RR* /\ C e. RR* ) -> ( B *e C ) = ( C *e B ) ) |
14 |
12 6 13
|
syl2anc |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( B *e C ) = ( C *e B ) ) |
15 |
11 14
|
oveq12d |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( ( A *e C ) +e ( B *e C ) ) = ( ( C *e A ) +e ( C *e B ) ) ) |
16 |
2 8 15
|
3eqtr4d |
|- ( ( A e. RR* /\ B e. RR* /\ C e. RR ) -> ( ( A +e B ) *e C ) = ( ( A *e C ) +e ( B *e C ) ) ) |