Metamath Proof Explorer


Theorem mamuass

Description: Matrix multiplication is associative, see also statement in Lang p. 505. (Contributed by Stefan O'Rear, 5-Sep-2015)

Ref Expression
Hypotheses mamucl.b ⊢ B = Base R
mamucl.r ⊢ φ → R ∈ Ring
mamuass.m ⊢ φ → M ∈ Fin
mamuass.n ⊢ φ → N ∈ Fin
mamuass.o ⊢ φ → O ∈ Fin
mamuass.p ⊢ φ → P ∈ Fin
mamuass.x ⊢ φ → X ∈ B M × N
mamuass.y ⊢ φ → Y ∈ B N × O
mamuass.z ⊢ φ → Z ∈ B O × P
mamuass.f ⊢ F = R maMul M N O
mamuass.g ⊢ G = R maMul M O P
mamuass.h ⊢ H = R maMul M N P
mamuass.i ⊢ I = R maMul N O P
Assertion mamuass ⊢ φ → X F Y G Z = X H Y I Z

Proof

Step Hyp Ref Expression
1 mamucl.b ⊢ B = Base R
2 mamucl.r ⊢ φ → R ∈ Ring
3 mamuass.m ⊢ φ → M ∈ Fin
4 mamuass.n ⊢ φ → N ∈ Fin
5 mamuass.o ⊢ φ → O ∈ Fin
6 mamuass.p ⊢ φ → P ∈ Fin
7 mamuass.x ⊢ φ → X ∈ B M × N
8 mamuass.y ⊢ φ → Y ∈ B N × O
9 mamuass.z ⊢ φ → Z ∈ B O × P
10 mamuass.f ⊢ F = R maMul M N O
11 mamuass.g ⊢ G = R maMul M O P
12 mamuass.h ⊢ H = R maMul M N P
13 mamuass.i ⊢ I = R maMul N O P
14 2 ringcmnd ⊢ φ → R ∈ CMnd
15 14 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → R ∈ CMnd
16 5 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → O ∈ Fin
17 4 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → N ∈ Fin
18 eqid ⊢ ⋅ R = ⋅ R
19 2 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → R ∈ Ring
20 elmapi ⊢ X ∈ B M × N → X : M × N ⟶ B
21 7 20 syl ⊢ φ → X : M × N ⟶ B
22 21 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → X : M × N ⟶ B
23 simplrl ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → i ∈ M
24 simpr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → l ∈ N
25 22 23 24 fovcdmd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → i X l ∈ B
26 25 adantrl ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ∈ B
27 elmapi ⊢ Y ∈ B N × O → Y : N × O ⟶ B
28 8 27 syl ⊢ φ → Y : N × O ⟶ B
29 28 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → Y : N × O ⟶ B
30 simprr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → l ∈ N
31 simprl ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → j ∈ O
32 29 30 31 fovcdmd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → l Y j ∈ B
33 elmapi ⊢ Z ∈ B O × P → Z : O × P ⟶ B
34 9 33 syl ⊢ φ → Z : O × P ⟶ B
35 34 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → Z : O × P ⟶ B
36 simpr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → j ∈ O
37 simplrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → k ∈ P
38 35 36 37 fovcdmd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → j Z k ∈ B
39 38 adantrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → j Z k ∈ B
40 1 18 19 32 39 ringcld ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → l Y j ⋅ R j Z k ∈ B
41 1 18 19 26 40 ringcld ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ⋅ R j Z k ∈ B
42 1 15 16 17 41 gsumcom3fi ⊢ φ ∧ i ∈ M ∧ k ∈ P → ∑ R j ∈ O ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k = ∑ R l ∈ N ∑ R j ∈ O i X l ⋅ R l Y j ⋅ R j Z k
43 2 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → R ∈ Ring
44 3 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → M ∈ Fin
45 4 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → N ∈ Fin
46 5 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → O ∈ Fin
47 7 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → X ∈ B M × N
48 8 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → Y ∈ B N × O
49 simplrl ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → i ∈ M
50 10 1 18 43 44 45 46 47 48 49 36 mamufv ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → i X F Y j = ∑ R l ∈ N i X l ⋅ R l Y j
51 50 oveq1d ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → i X F Y j ⋅ R j Z k = ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
52 eqid ⊢ 0 R = 0 R
53 1 18 19 26 32 ringcld ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ∈ B
54 53 anassrs ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ∈ B
55 eqid ⊢ l ∈ N ⟼ i X l ⋅ R l Y j = l ∈ N ⟼ i X l ⋅ R l Y j
56 ovexd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ∈ V
57 fvexd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → 0 R ∈ V
58 55 45 56 57 fsuppmptdm ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → finSupp 0 R⁡ l ∈ N ⟼ i X l ⋅ R l Y j
59 1 52 18 43 45 38 54 58 gsummulc1 ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k = ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
60 1 18 ringass ⊢ R ∈ Ring ∧ i X l ∈ B ∧ l Y j ∈ B ∧ j Z k ∈ B → i X l ⋅ R l Y j ⋅ R j Z k = i X l ⋅ R l Y j ⋅ R j Z k
61 19 26 32 39 60 syl13anc ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ⋅ R j Z k = i X l ⋅ R l Y j ⋅ R j Z k
62 61 anassrs ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O ∧ l ∈ N → i X l ⋅ R l Y j ⋅ R j Z k = i X l ⋅ R l Y j ⋅ R j Z k
63 62 mpteq2dva ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → l ∈ N ⟼ i X l ⋅ R l Y j ⋅ R j Z k = l ∈ N ⟼ i X l ⋅ R l Y j ⋅ R j Z k
64 63 oveq2d ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k = ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
65 51 59 64 3eqtr2d ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ j ∈ O → i X F Y j ⋅ R j Z k = ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
66 65 mpteq2dva ⊢ φ ∧ i ∈ M ∧ k ∈ P → j ∈ O ⟼ i X F Y j ⋅ R j Z k = j ∈ O ⟼ ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
67 66 oveq2d ⊢ φ ∧ i ∈ M ∧ k ∈ P → ∑ R j ∈ O i X F Y j ⋅ R j Z k = ∑ R j ∈ O ∑ R l ∈ N i X l ⋅ R l Y j ⋅ R j Z k
68 2 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → R ∈ Ring
69 4 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → N ∈ Fin
70 5 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → O ∈ Fin
71 6 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → P ∈ Fin
72 8 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → Y ∈ B N × O
73 9 ad2antrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → Z ∈ B O × P
74 simplrr ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → k ∈ P
75 13 1 18 68 69 70 71 72 73 24 74 mamufv ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → l Y I Z k = ∑ R j ∈ O l Y j ⋅ R j Z k
76 75 oveq2d ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → i X l ⋅ R l Y I Z k = i X l ⋅ R ∑ R j ∈ O l Y j ⋅ R j Z k
77 40 anass1rs ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N ∧ j ∈ O → l Y j ⋅ R j Z k ∈ B
78 eqid ⊢ j ∈ O ⟼ l Y j ⋅ R j Z k = j ∈ O ⟼ l Y j ⋅ R j Z k
79 ovexd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N ∧ j ∈ O → l Y j ⋅ R j Z k ∈ V
80 fvexd ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → 0 R ∈ V
81 78 70 79 80 fsuppmptdm ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → finSupp 0 R⁡ j ∈ O ⟼ l Y j ⋅ R j Z k
82 1 52 18 68 70 25 77 81 gsummulc2 ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → ∑ R j ∈ O i X l ⋅ R l Y j ⋅ R j Z k = i X l ⋅ R ∑ R j ∈ O l Y j ⋅ R j Z k
83 76 82 eqtr4d ⊢ φ ∧ i ∈ M ∧ k ∈ P ∧ l ∈ N → i X l ⋅ R l Y I Z k = ∑ R j ∈ O i X l ⋅ R l Y j ⋅ R j Z k
84 83 mpteq2dva ⊢ φ ∧ i ∈ M ∧ k ∈ P → l ∈ N ⟼ i X l ⋅ R l Y I Z k = l ∈ N ⟼ ∑ R j ∈ O i X l ⋅ R l Y j ⋅ R j Z k
85 84 oveq2d ⊢ φ ∧ i ∈ M ∧ k ∈ P → ∑ R l ∈ N i X l ⋅ R l Y I Z k = ∑ R l ∈ N ∑ R j ∈ O i X l ⋅ R l Y j ⋅ R j Z k
86 42 67 85 3eqtr4d ⊢ φ ∧ i ∈ M ∧ k ∈ P → ∑ R j ∈ O i X F Y j ⋅ R j Z k = ∑ R l ∈ N i X l ⋅ R l Y I Z k
87 2 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → R ∈ Ring
88 3 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → M ∈ Fin
89 6 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → P ∈ Fin
90 1 2 10 3 4 5 7 8 mamucl ⊢ φ → X F Y ∈ B M × O
91 90 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → X F Y ∈ B M × O
92 9 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → Z ∈ B O × P
93 simprl ⊢ φ ∧ i ∈ M ∧ k ∈ P → i ∈ M
94 simprr ⊢ φ ∧ i ∈ M ∧ k ∈ P → k ∈ P
95 11 1 18 87 88 16 89 91 92 93 94 mamufv ⊢ φ ∧ i ∈ M ∧ k ∈ P → i X F Y G Z k = ∑ R j ∈ O i X F Y j ⋅ R j Z k
96 7 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → X ∈ B M × N
97 1 2 13 4 5 6 8 9 mamucl ⊢ φ → Y I Z ∈ B N × P
98 97 adantr ⊢ φ ∧ i ∈ M ∧ k ∈ P → Y I Z ∈ B N × P
99 12 1 18 87 88 17 89 96 98 93 94 mamufv ⊢ φ ∧ i ∈ M ∧ k ∈ P → i X H Y I Z k = ∑ R l ∈ N i X l ⋅ R l Y I Z k
100 86 95 99 3eqtr4d ⊢ φ ∧ i ∈ M ∧ k ∈ P → i X F Y G Z k = i X H Y I Z k
101 100 ralrimivva ⊢ φ → ∀ i ∈ M ∀ k ∈ P i X F Y G Z k = i X H Y I Z k
102 1 2 11 3 5 6 90 9 mamucl ⊢ φ → X F Y G Z ∈ B M × P
103 elmapi ⊢ X F Y G Z ∈ B M × P → X F Y G Z : M × P ⟶ B
104 ffn ⊢ X F Y G Z : M × P ⟶ B → X F Y G Z Fn M × P
105 102 103 104 3syl ⊢ φ → X F Y G Z Fn M × P
106 1 2 12 3 4 6 7 97 mamucl ⊢ φ → X H Y I Z ∈ B M × P
107 elmapi ⊢ X H Y I Z ∈ B M × P → X H Y I Z : M × P ⟶ B
108 ffn ⊢ X H Y I Z : M × P ⟶ B → X H Y I Z Fn M × P
109 106 107 108 3syl ⊢ φ → X H Y I Z Fn M × P
110 eqfnov2 ⊢ X F Y G Z Fn M × P ∧ X H Y I Z Fn M × P → X F Y G Z = X H Y I Z ↔ ∀ i ∈ M ∀ k ∈ P i X F Y G Z k = i X H Y I Z k
111 105 109 110 syl2anc ⊢ φ → X F Y G Z = X H Y I Z ↔ ∀ i ∈ M ∀ k ∈ P i X F Y G Z k = i X H Y I Z k
112 101 111 mpbird ⊢ φ → X F Y G Z = X H Y I Z