Step |
Hyp |
Ref |
Expression |
1 |
|
frlmsplit2.y |
|- Y = ( R freeLMod U ) |
2 |
|
frlmsplit2.z |
|- Z = ( R freeLMod V ) |
3 |
|
frlmsplit2.b |
|- B = ( Base ` Y ) |
4 |
|
frlmsplit2.c |
|- C = ( Base ` Z ) |
5 |
|
frlmsplit2.f |
|- F = ( x e. B |-> ( x |` V ) ) |
6 |
|
simp1 |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> R e. Ring ) |
7 |
|
simp2 |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> U e. X ) |
8 |
|
eqid |
|- ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) = ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) |
9 |
1 3 8
|
frlmlss |
|- ( ( R e. Ring /\ U e. X ) -> B e. ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) ) |
10 |
6 7 9
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> B e. ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) ) |
11 |
|
eqid |
|- ( Base ` ( ( ringLMod ` R ) ^s U ) ) = ( Base ` ( ( ringLMod ` R ) ^s U ) ) |
12 |
11 8
|
lssss |
|- ( B e. ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) -> B C_ ( Base ` ( ( ringLMod ` R ) ^s U ) ) ) |
13 |
|
resmpt |
|- ( B C_ ( Base ` ( ( ringLMod ` R ) ^s U ) ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) = ( x e. B |-> ( x |` V ) ) ) |
14 |
10 12 13
|
3syl |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) = ( x e. B |-> ( x |` V ) ) ) |
15 |
14 5
|
eqtr4di |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) = F ) |
16 |
|
rlmlmod |
|- ( R e. Ring -> ( ringLMod ` R ) e. LMod ) |
17 |
|
eqid |
|- ( ( ringLMod ` R ) ^s U ) = ( ( ringLMod ` R ) ^s U ) |
18 |
|
eqid |
|- ( ( ringLMod ` R ) ^s V ) = ( ( ringLMod ` R ) ^s V ) |
19 |
|
eqid |
|- ( Base ` ( ( ringLMod ` R ) ^s V ) ) = ( Base ` ( ( ringLMod ` R ) ^s V ) ) |
20 |
|
eqid |
|- ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) = ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |
21 |
17 18 11 19 20
|
pwssplit3 |
|- ( ( ( ringLMod ` R ) e. LMod /\ U e. X /\ V C_ U ) -> ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) e. ( ( ( ringLMod ` R ) ^s U ) LMHom ( ( ringLMod ` R ) ^s V ) ) ) |
22 |
16 21
|
syl3an1 |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) e. ( ( ( ringLMod ` R ) ^s U ) LMHom ( ( ringLMod ` R ) ^s V ) ) ) |
23 |
|
eqid |
|- ( ( ( ringLMod ` R ) ^s U ) |`s B ) = ( ( ( ringLMod ` R ) ^s U ) |`s B ) |
24 |
8 23
|
reslmhm |
|- ( ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) e. ( ( ( ringLMod ` R ) ^s U ) LMHom ( ( ringLMod ` R ) ^s V ) ) /\ B e. ( LSubSp ` ( ( ringLMod ` R ) ^s U ) ) ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ringLMod ` R ) ^s V ) ) ) |
25 |
22 10 24
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ringLMod ` R ) ^s V ) ) ) |
26 |
16
|
3ad2ant1 |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ringLMod ` R ) e. LMod ) |
27 |
|
simp3 |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> V C_ U ) |
28 |
7 27
|
ssexd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> V e. _V ) |
29 |
18
|
pwslmod |
|- ( ( ( ringLMod ` R ) e. LMod /\ V e. _V ) -> ( ( ringLMod ` R ) ^s V ) e. LMod ) |
30 |
26 28 29
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( ringLMod ` R ) ^s V ) e. LMod ) |
31 |
|
eqid |
|- ( LSubSp ` ( ( ringLMod ` R ) ^s V ) ) = ( LSubSp ` ( ( ringLMod ` R ) ^s V ) ) |
32 |
2 4 31
|
frlmlss |
|- ( ( R e. Ring /\ V e. _V ) -> C e. ( LSubSp ` ( ( ringLMod ` R ) ^s V ) ) ) |
33 |
6 28 32
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> C e. ( LSubSp ` ( ( ringLMod ` R ) ^s V ) ) ) |
34 |
14
|
rneqd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ran ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) = ran ( x e. B |-> ( x |` V ) ) ) |
35 |
|
eqid |
|- ( Base ` R ) = ( Base ` R ) |
36 |
1 35 3
|
frlmbasf |
|- ( ( U e. X /\ x e. B ) -> x : U --> ( Base ` R ) ) |
37 |
7 36
|
sylan |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> x : U --> ( Base ` R ) ) |
38 |
|
simpl3 |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> V C_ U ) |
39 |
37 38
|
fssresd |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( x |` V ) : V --> ( Base ` R ) ) |
40 |
|
fvex |
|- ( Base ` R ) e. _V |
41 |
|
elmapg |
|- ( ( ( Base ` R ) e. _V /\ V e. _V ) -> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) <-> ( x |` V ) : V --> ( Base ` R ) ) ) |
42 |
40 28 41
|
sylancr |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) <-> ( x |` V ) : V --> ( Base ` R ) ) ) |
43 |
42
|
adantr |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) <-> ( x |` V ) : V --> ( Base ` R ) ) ) |
44 |
39 43
|
mpbird |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( x |` V ) e. ( ( Base ` R ) ^m V ) ) |
45 |
|
eqid |
|- ( 0g ` R ) = ( 0g ` R ) |
46 |
1 45 3
|
frlmbasfsupp |
|- ( ( U e. X /\ x e. B ) -> x finSupp ( 0g ` R ) ) |
47 |
7 46
|
sylan |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> x finSupp ( 0g ` R ) ) |
48 |
|
fvexd |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( 0g ` R ) e. _V ) |
49 |
47 48
|
fsuppres |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( x |` V ) finSupp ( 0g ` R ) ) |
50 |
2 35 45 4
|
frlmelbas |
|- ( ( R e. Ring /\ V e. _V ) -> ( ( x |` V ) e. C <-> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) /\ ( x |` V ) finSupp ( 0g ` R ) ) ) ) |
51 |
6 28 50
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x |` V ) e. C <-> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) /\ ( x |` V ) finSupp ( 0g ` R ) ) ) ) |
52 |
51
|
adantr |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( ( x |` V ) e. C <-> ( ( x |` V ) e. ( ( Base ` R ) ^m V ) /\ ( x |` V ) finSupp ( 0g ` R ) ) ) ) |
53 |
44 49 52
|
mpbir2and |
|- ( ( ( R e. Ring /\ U e. X /\ V C_ U ) /\ x e. B ) -> ( x |` V ) e. C ) |
54 |
53
|
fmpttd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( x e. B |-> ( x |` V ) ) : B --> C ) |
55 |
54
|
frnd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ran ( x e. B |-> ( x |` V ) ) C_ C ) |
56 |
34 55
|
eqsstrd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ran ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) C_ C ) |
57 |
|
eqid |
|- ( ( ( ringLMod ` R ) ^s V ) |`s C ) = ( ( ( ringLMod ` R ) ^s V ) |`s C ) |
58 |
57 31
|
reslmhm2b |
|- ( ( ( ( ringLMod ` R ) ^s V ) e. LMod /\ C e. ( LSubSp ` ( ( ringLMod ` R ) ^s V ) ) /\ ran ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) C_ C ) -> ( ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ringLMod ` R ) ^s V ) ) <-> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) ) ) |
59 |
30 33 56 58
|
syl3anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ringLMod ` R ) ^s V ) ) <-> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) ) ) |
60 |
25 59
|
mpbid |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( ( x e. ( Base ` ( ( ringLMod ` R ) ^s U ) ) |-> ( x |` V ) ) |` B ) e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) ) |
61 |
15 60
|
eqeltrrd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> F e. ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) ) |
62 |
1 3
|
frlmpws |
|- ( ( R e. Ring /\ U e. X ) -> Y = ( ( ( ringLMod ` R ) ^s U ) |`s B ) ) |
63 |
6 7 62
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> Y = ( ( ( ringLMod ` R ) ^s U ) |`s B ) ) |
64 |
2 4
|
frlmpws |
|- ( ( R e. Ring /\ V e. _V ) -> Z = ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) |
65 |
6 28 64
|
syl2anc |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> Z = ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) |
66 |
63 65
|
oveq12d |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> ( Y LMHom Z ) = ( ( ( ( ringLMod ` R ) ^s U ) |`s B ) LMHom ( ( ( ringLMod ` R ) ^s V ) |`s C ) ) ) |
67 |
61 66
|
eleqtrrd |
|- ( ( R e. Ring /\ U e. X /\ V C_ U ) -> F e. ( Y LMHom Z ) ) |