Step |
Hyp |
Ref |
Expression |
1 |
|
elrsp.n |
|- N = ( RSpan ` R ) |
2 |
|
elrsp.b |
|- B = ( Base ` R ) |
3 |
|
elrsp.1 |
|- .0. = ( 0g ` R ) |
4 |
|
elrsp.x |
|- .x. = ( .r ` R ) |
5 |
|
elrsp.r |
|- ( ph -> R e. Ring ) |
6 |
|
elrsp.i |
|- ( ph -> I C_ B ) |
7 |
|
rspval |
|- ( RSpan ` R ) = ( LSpan ` ( ringLMod ` R ) ) |
8 |
1 7
|
eqtri |
|- N = ( LSpan ` ( ringLMod ` R ) ) |
9 |
|
rlmbas |
|- ( Base ` R ) = ( Base ` ( ringLMod ` R ) ) |
10 |
2 9
|
eqtri |
|- B = ( Base ` ( ringLMod ` R ) ) |
11 |
|
eqid |
|- ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) = ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) |
12 |
|
eqid |
|- ( Scalar ` ( ringLMod ` R ) ) = ( Scalar ` ( ringLMod ` R ) ) |
13 |
|
eqid |
|- ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) = ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) |
14 |
|
rlmvsca |
|- ( .r ` R ) = ( .s ` ( ringLMod ` R ) ) |
15 |
4 14
|
eqtri |
|- .x. = ( .s ` ( ringLMod ` R ) ) |
16 |
|
rlmlmod |
|- ( R e. Ring -> ( ringLMod ` R ) e. LMod ) |
17 |
5 16
|
syl |
|- ( ph -> ( ringLMod ` R ) e. LMod ) |
18 |
8 10 11 12 13 15 17 6
|
ellspds |
|- ( ph -> ( X e. ( N ` I ) <-> E. a e. ( ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) ^m I ) ( a finSupp ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) /\ X = ( ( ringLMod ` R ) gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) ) ) |
19 |
|
rlmsca |
|- ( R e. Ring -> R = ( Scalar ` ( ringLMod ` R ) ) ) |
20 |
5 19
|
syl |
|- ( ph -> R = ( Scalar ` ( ringLMod ` R ) ) ) |
21 |
20
|
fveq2d |
|- ( ph -> ( Base ` R ) = ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) ) |
22 |
2 21
|
eqtrid |
|- ( ph -> B = ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) ) |
23 |
22
|
oveq1d |
|- ( ph -> ( B ^m I ) = ( ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) ^m I ) ) |
24 |
20
|
fveq2d |
|- ( ph -> ( 0g ` R ) = ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) ) |
25 |
3 24
|
eqtrid |
|- ( ph -> .0. = ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) ) |
26 |
25
|
breq2d |
|- ( ph -> ( a finSupp .0. <-> a finSupp ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) ) ) |
27 |
2
|
fvexi |
|- B e. _V |
28 |
27
|
a1i |
|- ( ph -> B e. _V ) |
29 |
28 6
|
ssexd |
|- ( ph -> I e. _V ) |
30 |
29
|
mptexd |
|- ( ph -> ( i e. I |-> ( ( a ` i ) .x. i ) ) e. _V ) |
31 |
9
|
a1i |
|- ( ph -> ( Base ` R ) = ( Base ` ( ringLMod ` R ) ) ) |
32 |
|
rlmplusg |
|- ( +g ` R ) = ( +g ` ( ringLMod ` R ) ) |
33 |
32
|
a1i |
|- ( ph -> ( +g ` R ) = ( +g ` ( ringLMod ` R ) ) ) |
34 |
30 5 17 31 33
|
gsumpropd |
|- ( ph -> ( R gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) = ( ( ringLMod ` R ) gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) |
35 |
34
|
eqeq2d |
|- ( ph -> ( X = ( R gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) <-> X = ( ( ringLMod ` R ) gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) ) |
36 |
26 35
|
anbi12d |
|- ( ph -> ( ( a finSupp .0. /\ X = ( R gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) <-> ( a finSupp ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) /\ X = ( ( ringLMod ` R ) gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) ) ) |
37 |
23 36
|
rexeqbidv |
|- ( ph -> ( E. a e. ( B ^m I ) ( a finSupp .0. /\ X = ( R gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) <-> E. a e. ( ( Base ` ( Scalar ` ( ringLMod ` R ) ) ) ^m I ) ( a finSupp ( 0g ` ( Scalar ` ( ringLMod ` R ) ) ) /\ X = ( ( ringLMod ` R ) gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) ) ) |
38 |
18 37
|
bitr4d |
|- ( ph -> ( X e. ( N ` I ) <-> E. a e. ( B ^m I ) ( a finSupp .0. /\ X = ( R gsum ( i e. I |-> ( ( a ` i ) .x. i ) ) ) ) ) ) |