This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Matrix multiplication distributes over scalar multiplication on the left. (Contributed by Stefan O'Rear, 5-Sep-2015) (Proof shortened by AV, 22-Jul-2019)
| Ref | Expression | ||
|---|---|---|---|
| Hypotheses | mamuvs2.r | |- ( ph -> R e. CRing ) |
|
| mamuvs2.b | |- B = ( Base ` R ) |
||
| mamuvs2.t | |- .x. = ( .r ` R ) |
||
| mamuvs2.f | |- F = ( R maMul <. M , N , O >. ) |
||
| mamuvs2.m | |- ( ph -> M e. Fin ) |
||
| mamuvs2.n | |- ( ph -> N e. Fin ) |
||
| mamuvs2.o | |- ( ph -> O e. Fin ) |
||
| mamuvs2.x | |- ( ph -> X e. ( B ^m ( M X. N ) ) ) |
||
| mamuvs2.y | |- ( ph -> Y e. B ) |
||
| mamuvs2.z | |- ( ph -> Z e. ( B ^m ( N X. O ) ) ) |
||
| Assertion | mamuvs2 | |- ( ph -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) = ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | mamuvs2.r | |- ( ph -> R e. CRing ) |
|
| 2 | mamuvs2.b | |- B = ( Base ` R ) |
|
| 3 | mamuvs2.t | |- .x. = ( .r ` R ) |
|
| 4 | mamuvs2.f | |- F = ( R maMul <. M , N , O >. ) |
|
| 5 | mamuvs2.m | |- ( ph -> M e. Fin ) |
|
| 6 | mamuvs2.n | |- ( ph -> N e. Fin ) |
|
| 7 | mamuvs2.o | |- ( ph -> O e. Fin ) |
|
| 8 | mamuvs2.x | |- ( ph -> X e. ( B ^m ( M X. N ) ) ) |
|
| 9 | mamuvs2.y | |- ( ph -> Y e. B ) |
|
| 10 | mamuvs2.z | |- ( ph -> Z e. ( B ^m ( N X. O ) ) ) |
|
| 11 | df-ov | |- ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) = ( ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ` <. j , k >. ) |
|
| 12 | simpr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> j e. N ) |
|
| 13 | simplrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> k e. O ) |
|
| 14 | opelxpi | |- ( ( j e. N /\ k e. O ) -> <. j , k >. e. ( N X. O ) ) |
|
| 15 | 12 13 14 | syl2anc | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> <. j , k >. e. ( N X. O ) ) |
| 16 | xpfi | |- ( ( N e. Fin /\ O e. Fin ) -> ( N X. O ) e. Fin ) |
|
| 17 | 6 7 16 | syl2anc | |- ( ph -> ( N X. O ) e. Fin ) |
| 18 | 17 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( N X. O ) e. Fin ) |
| 19 | 9 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> Y e. B ) |
| 20 | elmapi | |- ( Z e. ( B ^m ( N X. O ) ) -> Z : ( N X. O ) --> B ) |
|
| 21 | ffn | |- ( Z : ( N X. O ) --> B -> Z Fn ( N X. O ) ) |
|
| 22 | 10 20 21 | 3syl | |- ( ph -> Z Fn ( N X. O ) ) |
| 23 | 22 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> Z Fn ( N X. O ) ) |
| 24 | df-ov | |- ( j Z k ) = ( Z ` <. j , k >. ) |
|
| 25 | 24 | eqcomi | |- ( Z ` <. j , k >. ) = ( j Z k ) |
| 26 | 25 | a1i | |- ( ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) /\ <. j , k >. e. ( N X. O ) ) -> ( Z ` <. j , k >. ) = ( j Z k ) ) |
| 27 | 18 19 23 26 | ofc1 | |- ( ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) /\ <. j , k >. e. ( N X. O ) ) -> ( ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ` <. j , k >. ) = ( Y .x. ( j Z k ) ) ) |
| 28 | 15 27 | mpdan | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ` <. j , k >. ) = ( Y .x. ( j Z k ) ) ) |
| 29 | 11 28 | eqtrid | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) = ( Y .x. ( j Z k ) ) ) |
| 30 | 29 | oveq2d | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) = ( ( i X j ) .x. ( Y .x. ( j Z k ) ) ) ) |
| 31 | eqid | |- ( mulGrp ` R ) = ( mulGrp ` R ) |
|
| 32 | 31 | crngmgp | |- ( R e. CRing -> ( mulGrp ` R ) e. CMnd ) |
| 33 | 1 32 | syl | |- ( ph -> ( mulGrp ` R ) e. CMnd ) |
| 34 | 33 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( mulGrp ` R ) e. CMnd ) |
| 35 | elmapi | |- ( X e. ( B ^m ( M X. N ) ) -> X : ( M X. N ) --> B ) |
|
| 36 | 8 35 | syl | |- ( ph -> X : ( M X. N ) --> B ) |
| 37 | 36 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> X : ( M X. N ) --> B ) |
| 38 | simplrl | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> i e. M ) |
|
| 39 | 37 38 12 | fovcdmd | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( i X j ) e. B ) |
| 40 | 10 20 | syl | |- ( ph -> Z : ( N X. O ) --> B ) |
| 41 | 40 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> Z : ( N X. O ) --> B ) |
| 42 | 41 12 13 | fovcdmd | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( j Z k ) e. B ) |
| 43 | 31 2 | mgpbas | |- B = ( Base ` ( mulGrp ` R ) ) |
| 44 | 31 3 | mgpplusg | |- .x. = ( +g ` ( mulGrp ` R ) ) |
| 45 | 43 44 | cmn12 | |- ( ( ( mulGrp ` R ) e. CMnd /\ ( ( i X j ) e. B /\ Y e. B /\ ( j Z k ) e. B ) ) -> ( ( i X j ) .x. ( Y .x. ( j Z k ) ) ) = ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) |
| 46 | 34 39 19 42 45 | syl13anc | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( i X j ) .x. ( Y .x. ( j Z k ) ) ) = ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) |
| 47 | 30 46 | eqtrd | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) = ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) |
| 48 | 47 | mpteq2dva | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( j e. N |-> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) ) = ( j e. N |-> ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) ) |
| 49 | 48 | oveq2d | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) ) ) = ( R gsum ( j e. N |-> ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 50 | eqid | |- ( 0g ` R ) = ( 0g ` R ) |
|
| 51 | crngring | |- ( R e. CRing -> R e. Ring ) |
|
| 52 | 1 51 | syl | |- ( ph -> R e. Ring ) |
| 53 | 52 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> R e. Ring ) |
| 54 | 6 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> N e. Fin ) |
| 55 | 9 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> Y e. B ) |
| 56 | 52 | ad2antrr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> R e. Ring ) |
| 57 | 2 3 56 39 42 | ringcld | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( i X j ) .x. ( j Z k ) ) e. B ) |
| 58 | eqid | |- ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) = ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) |
|
| 59 | ovexd | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ j e. N ) -> ( ( i X j ) .x. ( j Z k ) ) e. _V ) |
|
| 60 | fvexd | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( 0g ` R ) e. _V ) |
|
| 61 | 58 54 59 60 | fsuppmptdm | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) finSupp ( 0g ` R ) ) |
| 62 | 2 50 3 53 54 55 57 61 | gsummulc2 | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( R gsum ( j e. N |-> ( Y .x. ( ( i X j ) .x. ( j Z k ) ) ) ) ) = ( Y .x. ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 63 | 49 62 | eqtrd | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) ) ) = ( Y .x. ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 64 | 1 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> R e. CRing ) |
| 65 | 5 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> M e. Fin ) |
| 66 | 7 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> O e. Fin ) |
| 67 | 8 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> X e. ( B ^m ( M X. N ) ) ) |
| 68 | fconst6g | |- ( Y e. B -> ( ( N X. O ) X. { Y } ) : ( N X. O ) --> B ) |
|
| 69 | 9 68 | syl | |- ( ph -> ( ( N X. O ) X. { Y } ) : ( N X. O ) --> B ) |
| 70 | 2 | fvexi | |- B e. _V |
| 71 | elmapg | |- ( ( B e. _V /\ ( N X. O ) e. Fin ) -> ( ( ( N X. O ) X. { Y } ) e. ( B ^m ( N X. O ) ) <-> ( ( N X. O ) X. { Y } ) : ( N X. O ) --> B ) ) |
|
| 72 | 70 17 71 | sylancr | |- ( ph -> ( ( ( N X. O ) X. { Y } ) e. ( B ^m ( N X. O ) ) <-> ( ( N X. O ) X. { Y } ) : ( N X. O ) --> B ) ) |
| 73 | 69 72 | mpbird | |- ( ph -> ( ( N X. O ) X. { Y } ) e. ( B ^m ( N X. O ) ) ) |
| 74 | 2 3 | ringvcl | |- ( ( R e. Ring /\ ( ( N X. O ) X. { Y } ) e. ( B ^m ( N X. O ) ) /\ Z e. ( B ^m ( N X. O ) ) ) -> ( ( ( N X. O ) X. { Y } ) oF .x. Z ) e. ( B ^m ( N X. O ) ) ) |
| 75 | 52 73 10 74 | syl3anc | |- ( ph -> ( ( ( N X. O ) X. { Y } ) oF .x. Z ) e. ( B ^m ( N X. O ) ) ) |
| 76 | 75 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( ( ( N X. O ) X. { Y } ) oF .x. Z ) e. ( B ^m ( N X. O ) ) ) |
| 77 | simprl | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> i e. M ) |
|
| 78 | simprr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> k e. O ) |
|
| 79 | 4 2 3 64 65 54 66 67 76 77 78 | mamufv | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( i ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) k ) = ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j ( ( ( N X. O ) X. { Y } ) oF .x. Z ) k ) ) ) ) ) |
| 80 | df-ov | |- ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) = ( ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) ` <. i , k >. ) |
|
| 81 | opelxpi | |- ( ( i e. M /\ k e. O ) -> <. i , k >. e. ( M X. O ) ) |
|
| 82 | 81 | adantl | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> <. i , k >. e. ( M X. O ) ) |
| 83 | xpfi | |- ( ( M e. Fin /\ O e. Fin ) -> ( M X. O ) e. Fin ) |
|
| 84 | 5 7 83 | syl2anc | |- ( ph -> ( M X. O ) e. Fin ) |
| 85 | 84 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( M X. O ) e. Fin ) |
| 86 | 2 52 4 5 6 7 8 10 | mamucl | |- ( ph -> ( X F Z ) e. ( B ^m ( M X. O ) ) ) |
| 87 | elmapi | |- ( ( X F Z ) e. ( B ^m ( M X. O ) ) -> ( X F Z ) : ( M X. O ) --> B ) |
|
| 88 | ffn | |- ( ( X F Z ) : ( M X. O ) --> B -> ( X F Z ) Fn ( M X. O ) ) |
|
| 89 | 86 87 88 | 3syl | |- ( ph -> ( X F Z ) Fn ( M X. O ) ) |
| 90 | 89 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( X F Z ) Fn ( M X. O ) ) |
| 91 | df-ov | |- ( i ( X F Z ) k ) = ( ( X F Z ) ` <. i , k >. ) |
|
| 92 | 10 | adantr | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> Z e. ( B ^m ( N X. O ) ) ) |
| 93 | 4 2 3 64 65 54 66 67 92 77 78 | mamufv | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( i ( X F Z ) k ) = ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) |
| 94 | 91 93 | eqtr3id | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( ( X F Z ) ` <. i , k >. ) = ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) |
| 95 | 94 | adantr | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ <. i , k >. e. ( M X. O ) ) -> ( ( X F Z ) ` <. i , k >. ) = ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) |
| 96 | 85 55 90 95 | ofc1 | |- ( ( ( ph /\ ( i e. M /\ k e. O ) ) /\ <. i , k >. e. ( M X. O ) ) -> ( ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) ` <. i , k >. ) = ( Y .x. ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 97 | 82 96 | mpdan | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) ` <. i , k >. ) = ( Y .x. ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 98 | 80 97 | eqtrid | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) = ( Y .x. ( R gsum ( j e. N |-> ( ( i X j ) .x. ( j Z k ) ) ) ) ) ) |
| 99 | 63 79 98 | 3eqtr4d | |- ( ( ph /\ ( i e. M /\ k e. O ) ) -> ( i ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) k ) = ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) ) |
| 100 | 99 | ralrimivva | |- ( ph -> A. i e. M A. k e. O ( i ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) k ) = ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) ) |
| 101 | 2 52 4 5 6 7 8 75 | mamucl | |- ( ph -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) e. ( B ^m ( M X. O ) ) ) |
| 102 | elmapi | |- ( ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) e. ( B ^m ( M X. O ) ) -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) : ( M X. O ) --> B ) |
|
| 103 | ffn | |- ( ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) : ( M X. O ) --> B -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) Fn ( M X. O ) ) |
|
| 104 | 101 102 103 | 3syl | |- ( ph -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) Fn ( M X. O ) ) |
| 105 | fconst6g | |- ( Y e. B -> ( ( M X. O ) X. { Y } ) : ( M X. O ) --> B ) |
|
| 106 | 9 105 | syl | |- ( ph -> ( ( M X. O ) X. { Y } ) : ( M X. O ) --> B ) |
| 107 | elmapg | |- ( ( B e. _V /\ ( M X. O ) e. Fin ) -> ( ( ( M X. O ) X. { Y } ) e. ( B ^m ( M X. O ) ) <-> ( ( M X. O ) X. { Y } ) : ( M X. O ) --> B ) ) |
|
| 108 | 70 84 107 | sylancr | |- ( ph -> ( ( ( M X. O ) X. { Y } ) e. ( B ^m ( M X. O ) ) <-> ( ( M X. O ) X. { Y } ) : ( M X. O ) --> B ) ) |
| 109 | 106 108 | mpbird | |- ( ph -> ( ( M X. O ) X. { Y } ) e. ( B ^m ( M X. O ) ) ) |
| 110 | 2 3 | ringvcl | |- ( ( R e. Ring /\ ( ( M X. O ) X. { Y } ) e. ( B ^m ( M X. O ) ) /\ ( X F Z ) e. ( B ^m ( M X. O ) ) ) -> ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) e. ( B ^m ( M X. O ) ) ) |
| 111 | 52 109 86 110 | syl3anc | |- ( ph -> ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) e. ( B ^m ( M X. O ) ) ) |
| 112 | elmapi | |- ( ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) e. ( B ^m ( M X. O ) ) -> ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) : ( M X. O ) --> B ) |
|
| 113 | ffn | |- ( ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) : ( M X. O ) --> B -> ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) Fn ( M X. O ) ) |
|
| 114 | 111 112 113 | 3syl | |- ( ph -> ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) Fn ( M X. O ) ) |
| 115 | eqfnov2 | |- ( ( ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) Fn ( M X. O ) /\ ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) Fn ( M X. O ) ) -> ( ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) = ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) <-> A. i e. M A. k e. O ( i ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) k ) = ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) ) ) |
|
| 116 | 104 114 115 | syl2anc | |- ( ph -> ( ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) = ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) <-> A. i e. M A. k e. O ( i ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) k ) = ( i ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) k ) ) ) |
| 117 | 100 116 | mpbird | |- ( ph -> ( X F ( ( ( N X. O ) X. { Y } ) oF .x. Z ) ) = ( ( ( M X. O ) X. { Y } ) oF .x. ( X F Z ) ) ) |