Step |
Hyp |
Ref |
Expression |
1 |
|
eqid |
|- ( I Mat R ) = ( I Mat R ) |
2 |
|
eqid |
|- ( Base ` ( I Mat R ) ) = ( Base ` ( I Mat R ) ) |
3 |
1 2
|
matrcl |
|- ( M e. ( Base ` ( I Mat R ) ) -> ( I e. Fin /\ R e. _V ) ) |
4 |
3
|
simpld |
|- ( M e. ( Base ` ( I Mat R ) ) -> I e. Fin ) |
5 |
4
|
ad3antlr |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> I e. Fin ) |
6 |
|
isfld |
|- ( R e. Field <-> ( R e. DivRing /\ R e. CRing ) ) |
7 |
6
|
simplbi |
|- ( R e. Field -> R e. DivRing ) |
8 |
7
|
anim1i |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) ) |
9 |
4
|
ad2antrl |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> I e. Fin ) |
10 |
|
simpr |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> M e. ( Base ` ( I Mat R ) ) ) |
11 |
|
xpfi |
|- ( ( I e. Fin /\ I e. Fin ) -> ( I X. I ) e. Fin ) |
12 |
11
|
anidms |
|- ( I e. Fin -> ( I X. I ) e. Fin ) |
13 |
|
eqid |
|- ( R freeLMod ( I X. I ) ) = ( R freeLMod ( I X. I ) ) |
14 |
|
eqid |
|- ( Base ` R ) = ( Base ` R ) |
15 |
13 14
|
frlmfibas |
|- ( ( R e. DivRing /\ ( I X. I ) e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
16 |
12 15
|
sylan2 |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
17 |
1 13
|
matbas |
|- ( ( I e. Fin /\ R e. DivRing ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
18 |
17
|
ancoms |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
19 |
16 18
|
eqtrd |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( I Mat R ) ) ) |
20 |
19
|
eleq2d |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( M e. ( ( Base ` R ) ^m ( I X. I ) ) <-> M e. ( Base ` ( I Mat R ) ) ) ) |
21 |
4 20
|
sylan2 |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( M e. ( ( Base ` R ) ^m ( I X. I ) ) <-> M e. ( Base ` ( I Mat R ) ) ) ) |
22 |
|
fvex |
|- ( Base ` R ) e. _V |
23 |
4 4 11
|
syl2anc |
|- ( M e. ( Base ` ( I Mat R ) ) -> ( I X. I ) e. Fin ) |
24 |
|
elmapg |
|- ( ( ( Base ` R ) e. _V /\ ( I X. I ) e. Fin ) -> ( M e. ( ( Base ` R ) ^m ( I X. I ) ) <-> M : ( I X. I ) --> ( Base ` R ) ) ) |
25 |
22 23 24
|
sylancr |
|- ( M e. ( Base ` ( I Mat R ) ) -> ( M e. ( ( Base ` R ) ^m ( I X. I ) ) <-> M : ( I X. I ) --> ( Base ` R ) ) ) |
26 |
25
|
adantl |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( M e. ( ( Base ` R ) ^m ( I X. I ) ) <-> M : ( I X. I ) --> ( Base ` R ) ) ) |
27 |
21 26
|
bitr3d |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( M e. ( Base ` ( I Mat R ) ) <-> M : ( I X. I ) --> ( Base ` R ) ) ) |
28 |
10 27
|
mpbid |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> M : ( I X. I ) --> ( Base ` R ) ) |
29 |
28
|
adantrr |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> M : ( I X. I ) --> ( Base ` R ) ) |
30 |
|
eldifsn |
|- ( I e. ( Fin \ { (/) } ) <-> ( I e. Fin /\ I =/= (/) ) ) |
31 |
30
|
biimpri |
|- ( ( I e. Fin /\ I =/= (/) ) -> I e. ( Fin \ { (/) } ) ) |
32 |
4 31
|
sylan |
|- ( ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) -> I e. ( Fin \ { (/) } ) ) |
33 |
32
|
adantl |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> I e. ( Fin \ { (/) } ) ) |
34 |
|
curf |
|- ( ( M : ( I X. I ) --> ( Base ` R ) /\ I e. ( Fin \ { (/) } ) /\ ( Base ` R ) e. _V ) -> curry M : I --> ( ( Base ` R ) ^m I ) ) |
35 |
22 34
|
mp3an3 |
|- ( ( M : ( I X. I ) --> ( Base ` R ) /\ I e. ( Fin \ { (/) } ) ) -> curry M : I --> ( ( Base ` R ) ^m I ) ) |
36 |
29 33 35
|
syl2anc |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> curry M : I --> ( ( Base ` R ) ^m I ) ) |
37 |
9 36
|
jca |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> ( I e. Fin /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) |
38 |
37
|
ex |
|- ( R e. DivRing -> ( ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) -> ( I e. Fin /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) ) |
39 |
38
|
imdistani |
|- ( ( R e. DivRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ I =/= (/) ) ) -> ( R e. DivRing /\ ( I e. Fin /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) ) |
40 |
39
|
anassrs |
|- ( ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) -> ( R e. DivRing /\ ( I e. Fin /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) ) |
41 |
|
anass |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) <-> ( R e. DivRing /\ ( I e. Fin /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) ) |
42 |
40 41
|
sylibr |
|- ( ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) -> ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) ) |
43 |
|
drngring |
|- ( R e. DivRing -> R e. Ring ) |
44 |
|
eqid |
|- ( R unitVec I ) = ( R unitVec I ) |
45 |
|
eqid |
|- ( R freeLMod I ) = ( R freeLMod I ) |
46 |
|
eqid |
|- ( Base ` ( R freeLMod I ) ) = ( Base ` ( R freeLMod I ) ) |
47 |
44 45 46
|
uvcff |
|- ( ( R e. Ring /\ I e. Fin ) -> ( R unitVec I ) : I --> ( Base ` ( R freeLMod I ) ) ) |
48 |
43 47
|
sylan |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( R unitVec I ) : I --> ( Base ` ( R freeLMod I ) ) ) |
49 |
48
|
ffvelrnda |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ i e. I ) -> ( ( R unitVec I ) ` i ) e. ( Base ` ( R freeLMod I ) ) ) |
50 |
49
|
ad4ant14 |
|- ( ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) /\ i e. I ) -> ( ( R unitVec I ) ` i ) e. ( Base ` ( R freeLMod I ) ) ) |
51 |
|
ffn |
|- ( curry M : I --> ( ( Base ` R ) ^m I ) -> curry M Fn I ) |
52 |
|
fnima |
|- ( curry M Fn I -> ( curry M " I ) = ran curry M ) |
53 |
51 52
|
syl |
|- ( curry M : I --> ( ( Base ` R ) ^m I ) -> ( curry M " I ) = ran curry M ) |
54 |
53
|
adantl |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( curry M " I ) = ran curry M ) |
55 |
54
|
fveq2d |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) = ( ( LSpan ` ( R freeLMod I ) ) ` ran curry M ) ) |
56 |
55
|
adantr |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) = ( ( LSpan ` ( R freeLMod I ) ) ` ran curry M ) ) |
57 |
|
simplll |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> R e. DivRing ) |
58 |
|
simpllr |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> I e. Fin ) |
59 |
45
|
frlmlmod |
|- ( ( R e. Ring /\ I e. Fin ) -> ( R freeLMod I ) e. LMod ) |
60 |
43 59
|
sylan |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( R freeLMod I ) e. LMod ) |
61 |
60
|
adantr |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( R freeLMod I ) e. LMod ) |
62 |
|
lindfrn |
|- ( ( ( R freeLMod I ) e. LMod /\ curry M LIndF ( R freeLMod I ) ) -> ran curry M e. ( LIndS ` ( R freeLMod I ) ) ) |
63 |
61 62
|
sylan |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ran curry M e. ( LIndS ` ( R freeLMod I ) ) ) |
64 |
45
|
frlmsca |
|- ( ( R e. DivRing /\ I e. Fin ) -> R = ( Scalar ` ( R freeLMod I ) ) ) |
65 |
|
drngnzr |
|- ( R e. DivRing -> R e. NzRing ) |
66 |
65
|
adantr |
|- ( ( R e. DivRing /\ I e. Fin ) -> R e. NzRing ) |
67 |
64 66
|
eqeltrrd |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( Scalar ` ( R freeLMod I ) ) e. NzRing ) |
68 |
60 67
|
jca |
|- ( ( R e. DivRing /\ I e. Fin ) -> ( ( R freeLMod I ) e. LMod /\ ( Scalar ` ( R freeLMod I ) ) e. NzRing ) ) |
69 |
|
eqid |
|- ( Scalar ` ( R freeLMod I ) ) = ( Scalar ` ( R freeLMod I ) ) |
70 |
46 69
|
lindff1 |
|- ( ( ( R freeLMod I ) e. LMod /\ ( Scalar ` ( R freeLMod I ) ) e. NzRing /\ curry M LIndF ( R freeLMod I ) ) -> curry M : dom curry M -1-1-> ( Base ` ( R freeLMod I ) ) ) |
71 |
70
|
3expa |
|- ( ( ( ( R freeLMod I ) e. LMod /\ ( Scalar ` ( R freeLMod I ) ) e. NzRing ) /\ curry M LIndF ( R freeLMod I ) ) -> curry M : dom curry M -1-1-> ( Base ` ( R freeLMod I ) ) ) |
72 |
68 71
|
sylan |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M LIndF ( R freeLMod I ) ) -> curry M : dom curry M -1-1-> ( Base ` ( R freeLMod I ) ) ) |
73 |
|
fdm |
|- ( curry M : I --> ( ( Base ` R ) ^m I ) -> dom curry M = I ) |
74 |
|
f1eq2 |
|- ( dom curry M = I -> ( curry M : dom curry M -1-1-> ( Base ` ( R freeLMod I ) ) <-> curry M : I -1-1-> ( Base ` ( R freeLMod I ) ) ) ) |
75 |
74
|
biimpac |
|- ( ( curry M : dom curry M -1-1-> ( Base ` ( R freeLMod I ) ) /\ dom curry M = I ) -> curry M : I -1-1-> ( Base ` ( R freeLMod I ) ) ) |
76 |
72 73 75
|
syl2an |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M LIndF ( R freeLMod I ) ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> curry M : I -1-1-> ( Base ` ( R freeLMod I ) ) ) |
77 |
76
|
an32s |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> curry M : I -1-1-> ( Base ` ( R freeLMod I ) ) ) |
78 |
|
f1f1orn |
|- ( curry M : I -1-1-> ( Base ` ( R freeLMod I ) ) -> curry M : I -1-1-onto-> ran curry M ) |
79 |
77 78
|
syl |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> curry M : I -1-1-onto-> ran curry M ) |
80 |
|
f1oeng |
|- ( ( I e. Fin /\ curry M : I -1-1-onto-> ran curry M ) -> I ~~ ran curry M ) |
81 |
58 79 80
|
syl2anc |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> I ~~ ran curry M ) |
82 |
81
|
ensymd |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ran curry M ~~ I ) |
83 |
|
lindsenlbs |
|- ( ( ( R e. DivRing /\ I e. Fin /\ ran curry M e. ( LIndS ` ( R freeLMod I ) ) ) /\ ran curry M ~~ I ) -> ran curry M e. ( LBasis ` ( R freeLMod I ) ) ) |
84 |
57 58 63 82 83
|
syl31anc |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ran curry M e. ( LBasis ` ( R freeLMod I ) ) ) |
85 |
|
eqid |
|- ( LBasis ` ( R freeLMod I ) ) = ( LBasis ` ( R freeLMod I ) ) |
86 |
|
eqid |
|- ( LSpan ` ( R freeLMod I ) ) = ( LSpan ` ( R freeLMod I ) ) |
87 |
46 85 86
|
lbssp |
|- ( ran curry M e. ( LBasis ` ( R freeLMod I ) ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ran curry M ) = ( Base ` ( R freeLMod I ) ) ) |
88 |
84 87
|
syl |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ran curry M ) = ( Base ` ( R freeLMod I ) ) ) |
89 |
56 88
|
eqtrd |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) = ( Base ` ( R freeLMod I ) ) ) |
90 |
89
|
adantr |
|- ( ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) /\ i e. I ) -> ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) = ( Base ` ( R freeLMod I ) ) ) |
91 |
50 90
|
eleqtrrd |
|- ( ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) /\ i e. I ) -> ( ( R unitVec I ) ` i ) e. ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) ) |
92 |
|
eqid |
|- ( Base ` ( Scalar ` ( R freeLMod I ) ) ) = ( Base ` ( Scalar ` ( R freeLMod I ) ) ) |
93 |
|
eqid |
|- ( 0g ` ( Scalar ` ( R freeLMod I ) ) ) = ( 0g ` ( Scalar ` ( R freeLMod I ) ) ) |
94 |
|
eqid |
|- ( .s ` ( R freeLMod I ) ) = ( .s ` ( R freeLMod I ) ) |
95 |
45 14
|
frlmfibas |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( Base ` R ) ^m I ) = ( Base ` ( R freeLMod I ) ) ) |
96 |
95
|
feq3d |
|- ( ( R e. Ring /\ I e. Fin ) -> ( curry M : I --> ( ( Base ` R ) ^m I ) <-> curry M : I --> ( Base ` ( R freeLMod I ) ) ) ) |
97 |
96
|
biimpa |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> curry M : I --> ( Base ` ( R freeLMod I ) ) ) |
98 |
59
|
adantr |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( R freeLMod I ) e. LMod ) |
99 |
|
simplr |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> I e. Fin ) |
100 |
86 46 92 69 93 94 97 98 99
|
elfilspd |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( ( ( R unitVec I ) ` i ) e. ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) <-> E. n e. ( ( Base ` ( Scalar ` ( R freeLMod I ) ) ) ^m I ) ( ( R unitVec I ) ` i ) = ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) ) ) |
101 |
45
|
frlmsca |
|- ( ( R e. Ring /\ I e. Fin ) -> R = ( Scalar ` ( R freeLMod I ) ) ) |
102 |
101
|
fveq2d |
|- ( ( R e. Ring /\ I e. Fin ) -> ( Base ` R ) = ( Base ` ( Scalar ` ( R freeLMod I ) ) ) ) |
103 |
102
|
oveq1d |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( Base ` R ) ^m I ) = ( ( Base ` ( Scalar ` ( R freeLMod I ) ) ) ^m I ) ) |
104 |
103
|
adantr |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( ( Base ` R ) ^m I ) = ( ( Base ` ( Scalar ` ( R freeLMod I ) ) ) ^m I ) ) |
105 |
|
elmapi |
|- ( n e. ( ( Base ` R ) ^m I ) -> n : I --> ( Base ` R ) ) |
106 |
|
ffn |
|- ( n : I --> ( Base ` R ) -> n Fn I ) |
107 |
106
|
adantl |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> n Fn I ) |
108 |
51
|
ad2antlr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> curry M Fn I ) |
109 |
|
simpllr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> I e. Fin ) |
110 |
|
inidm |
|- ( I i^i I ) = I |
111 |
|
eqidd |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( n ` k ) = ( n ` k ) ) |
112 |
|
eqidd |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( curry M ` k ) = ( curry M ` k ) ) |
113 |
107 108 109 109 110 111 112
|
offval |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( n oF ( .s ` ( R freeLMod I ) ) curry M ) = ( k e. I |-> ( ( n ` k ) ( .s ` ( R freeLMod I ) ) ( curry M ` k ) ) ) ) |
114 |
|
simp-4r |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> I e. Fin ) |
115 |
|
ffvelrn |
|- ( ( n : I --> ( Base ` R ) /\ k e. I ) -> ( n ` k ) e. ( Base ` R ) ) |
116 |
115
|
adantll |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( n ` k ) e. ( Base ` R ) ) |
117 |
|
ffvelrn |
|- ( ( curry M : I --> ( ( Base ` R ) ^m I ) /\ k e. I ) -> ( curry M ` k ) e. ( ( Base ` R ) ^m I ) ) |
118 |
117
|
ad4ant24 |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( curry M ` k ) e. ( ( Base ` R ) ^m I ) ) |
119 |
95
|
ad3antrrr |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( ( Base ` R ) ^m I ) = ( Base ` ( R freeLMod I ) ) ) |
120 |
118 119
|
eleqtrd |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( curry M ` k ) e. ( Base ` ( R freeLMod I ) ) ) |
121 |
|
eqid |
|- ( .r ` R ) = ( .r ` R ) |
122 |
45 46 14 114 116 120 94 121
|
frlmvscafval |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( ( n ` k ) ( .s ` ( R freeLMod I ) ) ( curry M ` k ) ) = ( ( I X. { ( n ` k ) } ) oF ( .r ` R ) ( curry M ` k ) ) ) |
123 |
|
fvex |
|- ( n ` k ) e. _V |
124 |
|
fnconstg |
|- ( ( n ` k ) e. _V -> ( I X. { ( n ` k ) } ) Fn I ) |
125 |
123 124
|
mp1i |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( I X. { ( n ` k ) } ) Fn I ) |
126 |
|
elmapfn |
|- ( ( curry M ` k ) e. ( ( Base ` R ) ^m I ) -> ( curry M ` k ) Fn I ) |
127 |
117 126
|
syl |
|- ( ( curry M : I --> ( ( Base ` R ) ^m I ) /\ k e. I ) -> ( curry M ` k ) Fn I ) |
128 |
127
|
ad4ant24 |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( curry M ` k ) Fn I ) |
129 |
123
|
fvconst2 |
|- ( j e. I -> ( ( I X. { ( n ` k ) } ) ` j ) = ( n ` k ) ) |
130 |
129
|
adantl |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> ( ( I X. { ( n ` k ) } ) ` j ) = ( n ` k ) ) |
131 |
|
eqidd |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> ( ( curry M ` k ) ` j ) = ( ( curry M ` k ) ` j ) ) |
132 |
125 128 114 114 110 130 131
|
offval |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( ( I X. { ( n ` k ) } ) oF ( .r ` R ) ( curry M ` k ) ) = ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) |
133 |
122 132
|
eqtrd |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( ( n ` k ) ( .s ` ( R freeLMod I ) ) ( curry M ` k ) ) = ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) |
134 |
133
|
mpteq2dva |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( k e. I |-> ( ( n ` k ) ( .s ` ( R freeLMod I ) ) ( curry M ` k ) ) ) = ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) |
135 |
113 134
|
eqtrd |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( n oF ( .s ` ( R freeLMod I ) ) curry M ) = ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) |
136 |
135
|
oveq2d |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) = ( ( R freeLMod I ) gsum ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) |
137 |
|
eqid |
|- ( 0g ` ( R freeLMod I ) ) = ( 0g ` ( R freeLMod I ) ) |
138 |
|
simplll |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> R e. Ring ) |
139 |
|
simp-5l |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> R e. Ring ) |
140 |
115
|
ad4ant23 |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> ( n ` k ) e. ( Base ` R ) ) |
141 |
|
simplr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> curry M : I --> ( ( Base ` R ) ^m I ) ) |
142 |
|
elmapi |
|- ( ( curry M ` k ) e. ( ( Base ` R ) ^m I ) -> ( curry M ` k ) : I --> ( Base ` R ) ) |
143 |
117 142
|
syl |
|- ( ( curry M : I --> ( ( Base ` R ) ^m I ) /\ k e. I ) -> ( curry M ` k ) : I --> ( Base ` R ) ) |
144 |
143
|
ffvelrnda |
|- ( ( ( curry M : I --> ( ( Base ` R ) ^m I ) /\ k e. I ) /\ j e. I ) -> ( ( curry M ` k ) ` j ) e. ( Base ` R ) ) |
145 |
141 144
|
sylanl1 |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> ( ( curry M ` k ) ` j ) e. ( Base ` R ) ) |
146 |
14 121
|
ringcl |
|- ( ( R e. Ring /\ ( n ` k ) e. ( Base ` R ) /\ ( ( curry M ` k ) ` j ) e. ( Base ` R ) ) -> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) e. ( Base ` R ) ) |
147 |
139 140 145 146
|
syl3anc |
|- ( ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) /\ j e. I ) -> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) e. ( Base ` R ) ) |
148 |
147
|
fmpttd |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) ) |
149 |
|
elmapg |
|- ( ( ( Base ` R ) e. _V /\ I e. Fin ) -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( ( Base ` R ) ^m I ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) ) ) |
150 |
22 149
|
mpan |
|- ( I e. Fin -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( ( Base ` R ) ^m I ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) ) ) |
151 |
150
|
adantl |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( ( Base ` R ) ^m I ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) ) ) |
152 |
95
|
eleq2d |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( ( Base ` R ) ^m I ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( Base ` ( R freeLMod I ) ) ) ) |
153 |
151 152
|
bitr3d |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( Base ` ( R freeLMod I ) ) ) ) |
154 |
153
|
ad3antrrr |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) : I --> ( Base ` R ) <-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( Base ` ( R freeLMod I ) ) ) ) |
155 |
148 154
|
mpbid |
|- ( ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) /\ k e. I ) -> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. ( Base ` ( R freeLMod I ) ) ) |
156 |
|
mptexg |
|- ( I e. Fin -> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. _V ) |
157 |
156
|
ralrimivw |
|- ( I e. Fin -> A. k e. I ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. _V ) |
158 |
|
eqid |
|- ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) = ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) |
159 |
158
|
fnmpt |
|- ( A. k e. I ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) e. _V -> ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) Fn I ) |
160 |
157 159
|
syl |
|- ( I e. Fin -> ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) Fn I ) |
161 |
|
id |
|- ( I e. Fin -> I e. Fin ) |
162 |
|
fvexd |
|- ( I e. Fin -> ( 0g ` ( R freeLMod I ) ) e. _V ) |
163 |
160 161 162
|
fndmfifsupp |
|- ( I e. Fin -> ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) finSupp ( 0g ` ( R freeLMod I ) ) ) |
164 |
163
|
ad3antlr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) finSupp ( 0g ` ( R freeLMod I ) ) ) |
165 |
45 46 137 109 109 138 155 164
|
frlmgsum |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( ( R freeLMod I ) gsum ( k e. I |-> ( j e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) |
166 |
136 165
|
eqtr2d |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n : I --> ( Base ` R ) ) -> ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) = ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) ) |
167 |
105 166
|
sylan2 |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n e. ( ( Base ` R ) ^m I ) ) -> ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) = ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) ) |
168 |
167
|
eqeq2d |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ n e. ( ( Base ` R ) ^m I ) ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> ( ( R unitVec I ) ` i ) = ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) ) ) |
169 |
104 168
|
rexeqbidva |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> E. n e. ( ( Base ` ( Scalar ` ( R freeLMod I ) ) ) ^m I ) ( ( R unitVec I ) ` i ) = ( ( R freeLMod I ) gsum ( n oF ( .s ` ( R freeLMod I ) ) curry M ) ) ) ) |
170 |
100 169
|
bitr4d |
|- ( ( ( R e. Ring /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( ( ( R unitVec I ) ` i ) e. ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) <-> E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) ) |
171 |
43 170
|
sylanl1 |
|- ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) -> ( ( ( R unitVec I ) ` i ) e. ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) <-> E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) ) |
172 |
171
|
ad2antrr |
|- ( ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) /\ i e. I ) -> ( ( ( R unitVec I ) ` i ) e. ( ( LSpan ` ( R freeLMod I ) ) ` ( curry M " I ) ) <-> E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) ) |
173 |
91 172
|
mpbid |
|- ( ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) /\ i e. I ) -> E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) |
174 |
173
|
ralrimiva |
|- ( ( ( ( R e. DivRing /\ I e. Fin ) /\ curry M : I --> ( ( Base ` R ) ^m I ) ) /\ curry M LIndF ( R freeLMod I ) ) -> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) |
175 |
42 174
|
sylan |
|- ( ( ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) ) |
176 |
10 21
|
mpbird |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> M e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
177 |
|
elmapfn |
|- ( M e. ( ( Base ` R ) ^m ( I X. I ) ) -> M Fn ( I X. I ) ) |
178 |
176 177
|
syl |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> M Fn ( I X. I ) ) |
179 |
4
|
adantl |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> I e. Fin ) |
180 |
|
an32 |
|- ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ k e. I ) <-> ( ( M Fn ( I X. I ) /\ k e. I ) /\ j e. I ) ) |
181 |
|
df-3an |
|- ( ( M Fn ( I X. I ) /\ k e. I /\ j e. I ) <-> ( ( M Fn ( I X. I ) /\ k e. I ) /\ j e. I ) ) |
182 |
180 181
|
bitr4i |
|- ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ k e. I ) <-> ( M Fn ( I X. I ) /\ k e. I /\ j e. I ) ) |
183 |
|
curfv |
|- ( ( ( M Fn ( I X. I ) /\ k e. I /\ j e. I ) /\ I e. Fin ) -> ( ( curry M ` k ) ` j ) = ( k M j ) ) |
184 |
182 183
|
sylanb |
|- ( ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ k e. I ) /\ I e. Fin ) -> ( ( curry M ` k ) ` j ) = ( k M j ) ) |
185 |
184
|
an32s |
|- ( ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ I e. Fin ) /\ k e. I ) -> ( ( curry M ` k ) ` j ) = ( k M j ) ) |
186 |
185
|
oveq2d |
|- ( ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ I e. Fin ) /\ k e. I ) -> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) = ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) |
187 |
186
|
mpteq2dva |
|- ( ( ( M Fn ( I X. I ) /\ j e. I ) /\ I e. Fin ) -> ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) = ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) |
188 |
187
|
an32s |
|- ( ( ( M Fn ( I X. I ) /\ I e. Fin ) /\ j e. I ) -> ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) = ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) |
189 |
188
|
oveq2d |
|- ( ( ( M Fn ( I X. I ) /\ I e. Fin ) /\ j e. I ) -> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) = ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) |
190 |
189
|
mpteq2dva |
|- ( ( M Fn ( I X. I ) /\ I e. Fin ) -> ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) |
191 |
190
|
eqeq2d |
|- ( ( M Fn ( I X. I ) /\ I e. Fin ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
192 |
191
|
rexbidv |
|- ( ( M Fn ( I X. I ) /\ I e. Fin ) -> ( E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
193 |
192
|
ralbidv |
|- ( ( M Fn ( I X. I ) /\ I e. Fin ) -> ( A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
194 |
178 179 193
|
syl2anc |
|- ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
195 |
194
|
ad2antrr |
|- ( ( ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> ( A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( ( curry M ` k ) ` j ) ) ) ) ) <-> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
196 |
175 195
|
mpbid |
|- ( ( ( ( R e. DivRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) |
197 |
8 196
|
sylanl1 |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) |
198 |
|
fveq1 |
|- ( n = ( f ` i ) -> ( n ` k ) = ( ( f ` i ) ` k ) ) |
199 |
|
uncov |
|- ( ( i e. _V /\ k e. _V ) -> ( i uncurry f k ) = ( ( f ` i ) ` k ) ) |
200 |
199
|
el2v |
|- ( i uncurry f k ) = ( ( f ` i ) ` k ) |
201 |
198 200
|
eqtr4di |
|- ( n = ( f ` i ) -> ( n ` k ) = ( i uncurry f k ) ) |
202 |
201
|
oveq1d |
|- ( n = ( f ` i ) -> ( ( n ` k ) ( .r ` R ) ( k M j ) ) = ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) |
203 |
202
|
mpteq2dv |
|- ( n = ( f ` i ) -> ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) = ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) |
204 |
203
|
oveq2d |
|- ( n = ( f ` i ) -> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) = ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
205 |
204
|
mpteq2dv |
|- ( n = ( f ` i ) -> ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) |
206 |
205
|
eqeq2d |
|- ( n = ( f ` i ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) <-> ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
207 |
206
|
ac6sfi |
|- ( ( I e. Fin /\ A. i e. I E. n e. ( ( Base ` R ) ^m I ) ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( n ` k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> E. f ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
208 |
5 197 207
|
syl2anc |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> E. f ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) |
209 |
|
uncf |
|- ( f : I --> ( ( Base ` R ) ^m I ) -> uncurry f : ( I X. I ) --> ( Base ` R ) ) |
210 |
13 14
|
frlmfibas |
|- ( ( R e. Field /\ ( I X. I ) e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
211 |
12 210
|
sylan2 |
|- ( ( R e. Field /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
212 |
1 13
|
matbas |
|- ( ( I e. Fin /\ R e. Field ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
213 |
212
|
ancoms |
|- ( ( R e. Field /\ I e. Fin ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
214 |
211 213
|
eqtrd |
|- ( ( R e. Field /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( I Mat R ) ) ) |
215 |
4 214
|
sylan2 |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( I Mat R ) ) ) |
216 |
215
|
eleq2d |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) <-> uncurry f e. ( Base ` ( I Mat R ) ) ) ) |
217 |
|
elmapg |
|- ( ( ( Base ` R ) e. _V /\ ( I X. I ) e. Fin ) -> ( uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) <-> uncurry f : ( I X. I ) --> ( Base ` R ) ) ) |
218 |
22 23 217
|
sylancr |
|- ( M e. ( Base ` ( I Mat R ) ) -> ( uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) <-> uncurry f : ( I X. I ) --> ( Base ` R ) ) ) |
219 |
218
|
adantl |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) <-> uncurry f : ( I X. I ) --> ( Base ` R ) ) ) |
220 |
216 219
|
bitr3d |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( uncurry f e. ( Base ` ( I Mat R ) ) <-> uncurry f : ( I X. I ) --> ( Base ` R ) ) ) |
221 |
220
|
biimpar |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> uncurry f e. ( Base ` ( I Mat R ) ) ) |
222 |
221
|
adantr |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> uncurry f e. ( Base ` ( I Mat R ) ) ) |
223 |
|
nfv |
|- F/ j ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) |
224 |
|
nfmpt1 |
|- F/_ j ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
225 |
224
|
nfeq2 |
|- F/ j ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
226 |
|
fveq1 |
|- ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> ( ( ( R unitVec I ) ` i ) ` j ) = ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) ) |
227 |
7 43
|
syl |
|- ( R e. Field -> R e. Ring ) |
228 |
227 4
|
anim12i |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( R e. Ring /\ I e. Fin ) ) |
229 |
228
|
adantr |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( R e. Ring /\ I e. Fin ) ) |
230 |
|
equcom |
|- ( i = j <-> j = i ) |
231 |
|
ifbi |
|- ( ( i = j <-> j = i ) -> if ( i = j , ( 1r ` R ) , ( 0g ` R ) ) = if ( j = i , ( 1r ` R ) , ( 0g ` R ) ) ) |
232 |
230 231
|
ax-mp |
|- if ( i = j , ( 1r ` R ) , ( 0g ` R ) ) = if ( j = i , ( 1r ` R ) , ( 0g ` R ) ) |
233 |
|
eqid |
|- ( 1r ` R ) = ( 1r ` R ) |
234 |
|
eqid |
|- ( 0g ` R ) = ( 0g ` R ) |
235 |
|
simpllr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> I e. Fin ) |
236 |
|
simplll |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> R e. Ring ) |
237 |
|
simplr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> i e. I ) |
238 |
|
simpr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> j e. I ) |
239 |
|
eqid |
|- ( 1r ` ( I Mat R ) ) = ( 1r ` ( I Mat R ) ) |
240 |
1 233 234 235 236 237 238 239
|
mat1ov |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> ( i ( 1r ` ( I Mat R ) ) j ) = if ( i = j , ( 1r ` R ) , ( 0g ` R ) ) ) |
241 |
|
df-3an |
|- ( ( R e. Ring /\ I e. Fin /\ i e. I ) <-> ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) ) |
242 |
44 233 234
|
uvcvval |
|- ( ( ( R e. Ring /\ I e. Fin /\ i e. I ) /\ j e. I ) -> ( ( ( R unitVec I ) ` i ) ` j ) = if ( j = i , ( 1r ` R ) , ( 0g ` R ) ) ) |
243 |
241 242
|
sylanbr |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> ( ( ( R unitVec I ) ` i ) ` j ) = if ( j = i , ( 1r ` R ) , ( 0g ` R ) ) ) |
244 |
232 240 243
|
3eqtr4a |
|- ( ( ( ( R e. Ring /\ I e. Fin ) /\ i e. I ) /\ j e. I ) -> ( i ( 1r ` ( I Mat R ) ) j ) = ( ( ( R unitVec I ) ` i ) ` j ) ) |
245 |
229 244
|
sylanl1 |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( i ( 1r ` ( I Mat R ) ) j ) = ( ( ( R unitVec I ) ` i ) ` j ) ) |
246 |
|
ovex |
|- ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) e. _V |
247 |
|
eqid |
|- ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
248 |
247
|
fvmpt2 |
|- ( ( j e. I /\ ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) e. _V ) -> ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) = ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
249 |
246 248
|
mpan2 |
|- ( j e. I -> ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) = ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
250 |
249
|
adantl |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) = ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
251 |
|
eqid |
|- ( R maMul <. I , I , I >. ) = ( R maMul <. I , I , I >. ) |
252 |
|
simp-4l |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> R e. Field ) |
253 |
4
|
ad4antlr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> I e. Fin ) |
254 |
218
|
biimpar |
|- ( ( M e. ( Base ` ( I Mat R ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
255 |
254
|
ad5ant23 |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> uncurry f e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
256 |
|
simpr |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> M e. ( Base ` ( I Mat R ) ) ) |
257 |
256 215
|
eleqtrrd |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> M e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
258 |
257
|
ad3antrrr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> M e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
259 |
|
simplr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> i e. I ) |
260 |
|
simpr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> j e. I ) |
261 |
251 14 121 252 253 253 253 255 258 259 260
|
mamufv |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( i ( uncurry f ( R maMul <. I , I , I >. ) M ) j ) = ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) |
262 |
1 251
|
matmulr |
|- ( ( I e. Fin /\ R e. Field ) -> ( R maMul <. I , I , I >. ) = ( .r ` ( I Mat R ) ) ) |
263 |
262
|
ancoms |
|- ( ( R e. Field /\ I e. Fin ) -> ( R maMul <. I , I , I >. ) = ( .r ` ( I Mat R ) ) ) |
264 |
263
|
oveqd |
|- ( ( R e. Field /\ I e. Fin ) -> ( uncurry f ( R maMul <. I , I , I >. ) M ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) ) |
265 |
264
|
oveqd |
|- ( ( R e. Field /\ I e. Fin ) -> ( i ( uncurry f ( R maMul <. I , I , I >. ) M ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) |
266 |
4 265
|
sylan2 |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( i ( uncurry f ( R maMul <. I , I , I >. ) M ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) |
267 |
266
|
ad3antrrr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( i ( uncurry f ( R maMul <. I , I , I >. ) M ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) |
268 |
250 261 267
|
3eqtr2rd |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) = ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) ) |
269 |
245 268
|
eqeq12d |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) <-> ( ( ( R unitVec I ) ` i ) ` j ) = ( ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ` j ) ) ) |
270 |
226 269
|
syl5ibr |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) /\ j e. I ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) |
271 |
270
|
ex |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) -> ( j e. I -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) ) |
272 |
271
|
com23 |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> ( j e. I -> ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) ) |
273 |
223 225 272
|
ralrimd |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ i e. I ) -> ( ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> A. j e. I ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) |
274 |
273
|
ralimdva |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> A. i e. I A. j e. I ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) |
275 |
1 2 239
|
mat1bas |
|- ( ( R e. Ring /\ I e. Fin ) -> ( 1r ` ( I Mat R ) ) e. ( Base ` ( I Mat R ) ) ) |
276 |
13 14
|
frlmfibas |
|- ( ( R e. Ring /\ ( I X. I ) e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
277 |
12 276
|
sylan2 |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( R freeLMod ( I X. I ) ) ) ) |
278 |
1 13
|
matbas |
|- ( ( I e. Fin /\ R e. Ring ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
279 |
278
|
ancoms |
|- ( ( R e. Ring /\ I e. Fin ) -> ( Base ` ( R freeLMod ( I X. I ) ) ) = ( Base ` ( I Mat R ) ) ) |
280 |
277 279
|
eqtrd |
|- ( ( R e. Ring /\ I e. Fin ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( I Mat R ) ) ) |
281 |
275 280
|
eleqtrrd |
|- ( ( R e. Ring /\ I e. Fin ) -> ( 1r ` ( I Mat R ) ) e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
282 |
|
elmapfn |
|- ( ( 1r ` ( I Mat R ) ) e. ( ( Base ` R ) ^m ( I X. I ) ) -> ( 1r ` ( I Mat R ) ) Fn ( I X. I ) ) |
283 |
281 282
|
syl |
|- ( ( R e. Ring /\ I e. Fin ) -> ( 1r ` ( I Mat R ) ) Fn ( I X. I ) ) |
284 |
227 4 283
|
syl2an |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( 1r ` ( I Mat R ) ) Fn ( I X. I ) ) |
285 |
284
|
adantr |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( 1r ` ( I Mat R ) ) Fn ( I X. I ) ) |
286 |
1
|
matring |
|- ( ( I e. Fin /\ R e. Ring ) -> ( I Mat R ) e. Ring ) |
287 |
4 227 286
|
syl2anr |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( I Mat R ) e. Ring ) |
288 |
287
|
adantr |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( I Mat R ) e. Ring ) |
289 |
|
simplr |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> M e. ( Base ` ( I Mat R ) ) ) |
290 |
|
eqid |
|- ( .r ` ( I Mat R ) ) = ( .r ` ( I Mat R ) ) |
291 |
2 290
|
ringcl |
|- ( ( ( I Mat R ) e. Ring /\ uncurry f e. ( Base ` ( I Mat R ) ) /\ M e. ( Base ` ( I Mat R ) ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) e. ( Base ` ( I Mat R ) ) ) |
292 |
288 221 289 291
|
syl3anc |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) e. ( Base ` ( I Mat R ) ) ) |
293 |
215
|
adantr |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( ( Base ` R ) ^m ( I X. I ) ) = ( Base ` ( I Mat R ) ) ) |
294 |
292 293
|
eleqtrrd |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) e. ( ( Base ` R ) ^m ( I X. I ) ) ) |
295 |
|
elmapfn |
|- ( ( uncurry f ( .r ` ( I Mat R ) ) M ) e. ( ( Base ` R ) ^m ( I X. I ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) Fn ( I X. I ) ) |
296 |
294 295
|
syl |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) Fn ( I X. I ) ) |
297 |
|
eqfnov2 |
|- ( ( ( 1r ` ( I Mat R ) ) Fn ( I X. I ) /\ ( uncurry f ( .r ` ( I Mat R ) ) M ) Fn ( I X. I ) ) -> ( ( 1r ` ( I Mat R ) ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) <-> A. i e. I A. j e. I ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) |
298 |
285 296 297
|
syl2anc |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( ( 1r ` ( I Mat R ) ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) <-> A. i e. I A. j e. I ( i ( 1r ` ( I Mat R ) ) j ) = ( i ( uncurry f ( .r ` ( I Mat R ) ) M ) j ) ) ) |
299 |
274 298
|
sylibrd |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) -> ( A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) -> ( 1r ` ( I Mat R ) ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) ) ) |
300 |
299
|
imp |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> ( 1r ` ( I Mat R ) ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) ) |
301 |
300
|
eqcomd |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> ( uncurry f ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
302 |
|
oveq1 |
|- ( n = uncurry f -> ( n ( .r ` ( I Mat R ) ) M ) = ( uncurry f ( .r ` ( I Mat R ) ) M ) ) |
303 |
302
|
eqeq1d |
|- ( n = uncurry f -> ( ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) <-> ( uncurry f ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) |
304 |
303
|
rspcev |
|- ( ( uncurry f e. ( Base ` ( I Mat R ) ) /\ ( uncurry f ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
305 |
222 301 304
|
syl2anc |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ uncurry f : ( I X. I ) --> ( Base ` R ) ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
306 |
305
|
expl |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( uncurry f : ( I X. I ) --> ( Base ` R ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) |
307 |
209 306
|
sylani |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) |
308 |
307
|
exlimdv |
|- ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) -> ( E. f ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) |
309 |
308
|
imp |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ E. f ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
310 |
309
|
adantlr |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ E. f ( f : I --> ( ( Base ` R ) ^m I ) /\ A. i e. I ( ( R unitVec I ) ` i ) = ( j e. I |-> ( R gsum ( k e. I |-> ( ( i uncurry f k ) ( .r ` R ) ( k M j ) ) ) ) ) ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
311 |
208 310
|
syldan |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> E. n e. ( Base ` ( I Mat R ) ) ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) |
312 |
6
|
simprbi |
|- ( R e. Field -> R e. CRing ) |
313 |
|
eqid |
|- ( I maDet R ) = ( I maDet R ) |
314 |
313 1 2 14
|
mdetcl |
|- ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` M ) e. ( Base ` R ) ) |
315 |
313 1 2 14
|
mdetcl |
|- ( ( R e. CRing /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` n ) e. ( Base ` R ) ) |
316 |
|
eqid |
|- ( ||r ` R ) = ( ||r ` R ) |
317 |
14 316 121
|
dvdsrmul |
|- ( ( ( ( I maDet R ) ` M ) e. ( Base ` R ) /\ ( ( I maDet R ) ` n ) e. ( Base ` R ) ) -> ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
318 |
314 315 317
|
syl2an |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( R e. CRing /\ n e. ( Base ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
319 |
318
|
anandis |
|- ( ( R e. CRing /\ ( M e. ( Base ` ( I Mat R ) ) /\ n e. ( Base ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
320 |
319
|
anassrs |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
321 |
320
|
adantrr |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
322 |
|
fveq2 |
|- ( ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) -> ( ( I maDet R ) ` ( n ( .r ` ( I Mat R ) ) M ) ) = ( ( I maDet R ) ` ( 1r ` ( I Mat R ) ) ) ) |
323 |
1 2 313 121 290
|
mdetmul |
|- ( ( R e. CRing /\ n e. ( Base ` ( I Mat R ) ) /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` ( n ( .r ` ( I Mat R ) ) M ) ) = ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
324 |
323
|
3expa |
|- ( ( ( R e. CRing /\ n e. ( Base ` ( I Mat R ) ) ) /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` ( n ( .r ` ( I Mat R ) ) M ) ) = ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
325 |
324
|
an32s |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` ( n ( .r ` ( I Mat R ) ) M ) ) = ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) ) |
326 |
313 1 239 233
|
mdet1 |
|- ( ( R e. CRing /\ I e. Fin ) -> ( ( I maDet R ) ` ( 1r ` ( I Mat R ) ) ) = ( 1r ` R ) ) |
327 |
4 326
|
sylan2 |
|- ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` ( 1r ` ( I Mat R ) ) ) = ( 1r ` R ) ) |
328 |
327
|
adantr |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( I maDet R ) ` ( 1r ` ( I Mat R ) ) ) = ( 1r ` R ) ) |
329 |
325 328
|
eqeq12d |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( ( I maDet R ) ` ( n ( .r ` ( I Mat R ) ) M ) ) = ( ( I maDet R ) ` ( 1r ` ( I Mat R ) ) ) <-> ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) = ( 1r ` R ) ) ) |
330 |
322 329
|
syl5ib |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ n e. ( Base ` ( I Mat R ) ) ) -> ( ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) -> ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) = ( 1r ` R ) ) ) |
331 |
330
|
impr |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) = ( 1r ` R ) ) |
332 |
331
|
breq2d |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) <-> ( ( I maDet R ) ` M ) ( ||r ` R ) ( 1r ` R ) ) ) |
333 |
|
eqid |
|- ( Unit ` R ) = ( Unit ` R ) |
334 |
333 233 316
|
crngunit |
|- ( R e. CRing -> ( ( ( I maDet R ) ` M ) e. ( Unit ` R ) <-> ( ( I maDet R ) ` M ) ( ||r ` R ) ( 1r ` R ) ) ) |
335 |
334
|
ad2antrr |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( ( I maDet R ) ` M ) e. ( Unit ` R ) <-> ( ( I maDet R ) ` M ) ( ||r ` R ) ( 1r ` R ) ) ) |
336 |
332 335
|
bitr4d |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( ( I maDet R ) ` M ) ( ||r ` R ) ( ( ( I maDet R ) ` n ) ( .r ` R ) ( ( I maDet R ) ` M ) ) <-> ( ( I maDet R ) ` M ) e. ( Unit ` R ) ) ) |
337 |
321 336
|
mpbid |
|- ( ( ( R e. CRing /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) e. ( Unit ` R ) ) |
338 |
312 337
|
sylanl1 |
|- ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) e. ( Unit ` R ) ) |
339 |
338
|
ad4ant14 |
|- ( ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) /\ ( n e. ( Base ` ( I Mat R ) ) /\ ( n ( .r ` ( I Mat R ) ) M ) = ( 1r ` ( I Mat R ) ) ) ) -> ( ( I maDet R ) ` M ) e. ( Unit ` R ) ) |
340 |
311 339
|
rexlimddv |
|- ( ( ( ( R e. Field /\ M e. ( Base ` ( I Mat R ) ) ) /\ I =/= (/) ) /\ curry M LIndF ( R freeLMod I ) ) -> ( ( I maDet R ) ` M ) e. ( Unit ` R ) ) |