Step |
Hyp |
Ref |
Expression |
1 |
|
snlindsntor.b |
|- B = ( Base ` M ) |
2 |
|
snlindsntor.r |
|- R = ( Scalar ` M ) |
3 |
|
snlindsntor.s |
|- S = ( Base ` R ) |
4 |
|
snlindsntor.0 |
|- .0. = ( 0g ` R ) |
5 |
|
snlindsntor.z |
|- Z = ( 0g ` M ) |
6 |
|
snlindsntor.t |
|- .x. = ( .s ` M ) |
7 |
|
df-ne |
|- ( ( s .x. X ) =/= Z <-> -. ( s .x. X ) = Z ) |
8 |
7
|
ralbii |
|- ( A. s e. ( S \ { .0. } ) ( s .x. X ) =/= Z <-> A. s e. ( S \ { .0. } ) -. ( s .x. X ) = Z ) |
9 |
|
raldifsni |
|- ( A. s e. ( S \ { .0. } ) -. ( s .x. X ) = Z <-> A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) |
10 |
8 9
|
bitri |
|- ( A. s e. ( S \ { .0. } ) ( s .x. X ) =/= Z <-> A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) |
11 |
|
simpl |
|- ( ( M e. LMod /\ X e. B ) -> M e. LMod ) |
12 |
11
|
adantr |
|- ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> M e. LMod ) |
13 |
12
|
adantr |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> M e. LMod ) |
14 |
2
|
fveq2i |
|- ( Base ` R ) = ( Base ` ( Scalar ` M ) ) |
15 |
3 14
|
eqtri |
|- S = ( Base ` ( Scalar ` M ) ) |
16 |
15
|
oveq1i |
|- ( S ^m { X } ) = ( ( Base ` ( Scalar ` M ) ) ^m { X } ) |
17 |
16
|
eleq2i |
|- ( f e. ( S ^m { X } ) <-> f e. ( ( Base ` ( Scalar ` M ) ) ^m { X } ) ) |
18 |
17
|
biimpi |
|- ( f e. ( S ^m { X } ) -> f e. ( ( Base ` ( Scalar ` M ) ) ^m { X } ) ) |
19 |
18
|
adantl |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> f e. ( ( Base ` ( Scalar ` M ) ) ^m { X } ) ) |
20 |
|
snelpwi |
|- ( X e. ( Base ` M ) -> { X } e. ~P ( Base ` M ) ) |
21 |
20 1
|
eleq2s |
|- ( X e. B -> { X } e. ~P ( Base ` M ) ) |
22 |
21
|
ad3antlr |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> { X } e. ~P ( Base ` M ) ) |
23 |
|
lincval |
|- ( ( M e. LMod /\ f e. ( ( Base ` ( Scalar ` M ) ) ^m { X } ) /\ { X } e. ~P ( Base ` M ) ) -> ( f ( linC ` M ) { X } ) = ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) ) |
24 |
13 19 22 23
|
syl3anc |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( f ( linC ` M ) { X } ) = ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) ) |
25 |
24
|
eqeq1d |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( f ( linC ` M ) { X } ) = Z <-> ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = Z ) ) |
26 |
25
|
anbi2d |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) <-> ( f finSupp .0. /\ ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = Z ) ) ) |
27 |
|
lmodgrp |
|- ( M e. LMod -> M e. Grp ) |
28 |
27
|
grpmndd |
|- ( M e. LMod -> M e. Mnd ) |
29 |
28
|
ad3antrrr |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> M e. Mnd ) |
30 |
|
simpllr |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> X e. B ) |
31 |
|
elmapi |
|- ( f e. ( S ^m { X } ) -> f : { X } --> S ) |
32 |
12
|
adantl |
|- ( ( f : { X } --> S /\ ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) -> M e. LMod ) |
33 |
|
snidg |
|- ( X e. B -> X e. { X } ) |
34 |
33
|
adantl |
|- ( ( M e. LMod /\ X e. B ) -> X e. { X } ) |
35 |
34
|
adantr |
|- ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> X e. { X } ) |
36 |
|
ffvelrn |
|- ( ( f : { X } --> S /\ X e. { X } ) -> ( f ` X ) e. S ) |
37 |
35 36
|
sylan2 |
|- ( ( f : { X } --> S /\ ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) -> ( f ` X ) e. S ) |
38 |
|
simprlr |
|- ( ( f : { X } --> S /\ ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) -> X e. B ) |
39 |
|
eqid |
|- ( .s ` M ) = ( .s ` M ) |
40 |
1 2 39 3
|
lmodvscl |
|- ( ( M e. LMod /\ ( f ` X ) e. S /\ X e. B ) -> ( ( f ` X ) ( .s ` M ) X ) e. B ) |
41 |
32 37 38 40
|
syl3anc |
|- ( ( f : { X } --> S /\ ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) -> ( ( f ` X ) ( .s ` M ) X ) e. B ) |
42 |
41
|
expcom |
|- ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> ( f : { X } --> S -> ( ( f ` X ) ( .s ` M ) X ) e. B ) ) |
43 |
31 42
|
syl5com |
|- ( f e. ( S ^m { X } ) -> ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> ( ( f ` X ) ( .s ` M ) X ) e. B ) ) |
44 |
43
|
impcom |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( f ` X ) ( .s ` M ) X ) e. B ) |
45 |
|
fveq2 |
|- ( x = X -> ( f ` x ) = ( f ` X ) ) |
46 |
|
id |
|- ( x = X -> x = X ) |
47 |
45 46
|
oveq12d |
|- ( x = X -> ( ( f ` x ) ( .s ` M ) x ) = ( ( f ` X ) ( .s ` M ) X ) ) |
48 |
1 47
|
gsumsn |
|- ( ( M e. Mnd /\ X e. B /\ ( ( f ` X ) ( .s ` M ) X ) e. B ) -> ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = ( ( f ` X ) ( .s ` M ) X ) ) |
49 |
29 30 44 48
|
syl3anc |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = ( ( f ` X ) ( .s ` M ) X ) ) |
50 |
49
|
eqeq1d |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = Z <-> ( ( f ` X ) ( .s ` M ) X ) = Z ) ) |
51 |
33 36
|
sylan2 |
|- ( ( f : { X } --> S /\ X e. B ) -> ( f ` X ) e. S ) |
52 |
51
|
expcom |
|- ( X e. B -> ( f : { X } --> S -> ( f ` X ) e. S ) ) |
53 |
52
|
adantl |
|- ( ( M e. LMod /\ X e. B ) -> ( f : { X } --> S -> ( f ` X ) e. S ) ) |
54 |
6
|
oveqi |
|- ( ( f ` X ) .x. X ) = ( ( f ` X ) ( .s ` M ) X ) |
55 |
54
|
eqeq1i |
|- ( ( ( f ` X ) .x. X ) = Z <-> ( ( f ` X ) ( .s ` M ) X ) = Z ) |
56 |
|
oveq1 |
|- ( s = ( f ` X ) -> ( s .x. X ) = ( ( f ` X ) .x. X ) ) |
57 |
56
|
eqeq1d |
|- ( s = ( f ` X ) -> ( ( s .x. X ) = Z <-> ( ( f ` X ) .x. X ) = Z ) ) |
58 |
|
eqeq1 |
|- ( s = ( f ` X ) -> ( s = .0. <-> ( f ` X ) = .0. ) ) |
59 |
57 58
|
imbi12d |
|- ( s = ( f ` X ) -> ( ( ( s .x. X ) = Z -> s = .0. ) <-> ( ( ( f ` X ) .x. X ) = Z -> ( f ` X ) = .0. ) ) ) |
60 |
59
|
rspcva |
|- ( ( ( f ` X ) e. S /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> ( ( ( f ` X ) .x. X ) = Z -> ( f ` X ) = .0. ) ) |
61 |
55 60
|
syl5bir |
|- ( ( ( f ` X ) e. S /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> ( ( ( f ` X ) ( .s ` M ) X ) = Z -> ( f ` X ) = .0. ) ) |
62 |
61
|
ex |
|- ( ( f ` X ) e. S -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) -> ( ( ( f ` X ) ( .s ` M ) X ) = Z -> ( f ` X ) = .0. ) ) ) |
63 |
31 53 62
|
syl56 |
|- ( ( M e. LMod /\ X e. B ) -> ( f e. ( S ^m { X } ) -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) -> ( ( ( f ` X ) ( .s ` M ) X ) = Z -> ( f ` X ) = .0. ) ) ) ) |
64 |
63
|
com23 |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) -> ( f e. ( S ^m { X } ) -> ( ( ( f ` X ) ( .s ` M ) X ) = Z -> ( f ` X ) = .0. ) ) ) ) |
65 |
64
|
imp31 |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( ( f ` X ) ( .s ` M ) X ) = Z -> ( f ` X ) = .0. ) ) |
66 |
50 65
|
sylbid |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = Z -> ( f ` X ) = .0. ) ) |
67 |
66
|
adantld |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( f finSupp .0. /\ ( M gsum ( x e. { X } |-> ( ( f ` x ) ( .s ` M ) x ) ) ) = Z ) -> ( f ` X ) = .0. ) ) |
68 |
26 67
|
sylbid |
|- ( ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) /\ f e. ( S ^m { X } ) ) -> ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) ) |
69 |
68
|
ralrimiva |
|- ( ( ( M e. LMod /\ X e. B ) /\ A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) -> A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) ) |
70 |
69
|
ex |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) -> A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) ) ) |
71 |
|
impexp |
|- ( ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) <-> ( f finSupp .0. -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) ) |
72 |
31
|
adantl |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> f : { X } --> S ) |
73 |
|
snfi |
|- { X } e. Fin |
74 |
73
|
a1i |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> { X } e. Fin ) |
75 |
4
|
fvexi |
|- .0. e. _V |
76 |
75
|
a1i |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> .0. e. _V ) |
77 |
72 74 76
|
fdmfifsupp |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> f finSupp .0. ) |
78 |
|
pm2.27 |
|- ( f finSupp .0. -> ( ( f finSupp .0. -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) ) |
79 |
77 78
|
syl |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> ( ( f finSupp .0. -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) ) |
80 |
71 79
|
syl5bi |
|- ( ( ( M e. LMod /\ X e. B ) /\ f e. ( S ^m { X } ) ) -> ( ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) -> ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) ) |
81 |
80
|
ralimdva |
|- ( ( M e. LMod /\ X e. B ) -> ( A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) -> A. f e. ( S ^m { X } ) ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) ) ) |
82 |
1 2 3 4 5 6
|
snlindsntorlem |
|- ( ( M e. LMod /\ X e. B ) -> ( A. f e. ( S ^m { X } ) ( ( f ( linC ` M ) { X } ) = Z -> ( f ` X ) = .0. ) -> A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) |
83 |
81 82
|
syld |
|- ( ( M e. LMod /\ X e. B ) -> ( A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) -> A. s e. S ( ( s .x. X ) = Z -> s = .0. ) ) ) |
84 |
70 83
|
impbid |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) <-> A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) ) ) |
85 |
|
fveqeq2 |
|- ( y = X -> ( ( f ` y ) = .0. <-> ( f ` X ) = .0. ) ) |
86 |
85
|
ralsng |
|- ( X e. B -> ( A. y e. { X } ( f ` y ) = .0. <-> ( f ` X ) = .0. ) ) |
87 |
86
|
adantl |
|- ( ( M e. LMod /\ X e. B ) -> ( A. y e. { X } ( f ` y ) = .0. <-> ( f ` X ) = .0. ) ) |
88 |
87
|
bicomd |
|- ( ( M e. LMod /\ X e. B ) -> ( ( f ` X ) = .0. <-> A. y e. { X } ( f ` y ) = .0. ) ) |
89 |
88
|
imbi2d |
|- ( ( M e. LMod /\ X e. B ) -> ( ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) <-> ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) |
90 |
89
|
ralbidv |
|- ( ( M e. LMod /\ X e. B ) -> ( A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> ( f ` X ) = .0. ) <-> A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) |
91 |
|
snelpwi |
|- ( X e. B -> { X } e. ~P B ) |
92 |
91
|
adantl |
|- ( ( M e. LMod /\ X e. B ) -> { X } e. ~P B ) |
93 |
92
|
biantrurd |
|- ( ( M e. LMod /\ X e. B ) -> ( A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) <-> ( { X } e. ~P B /\ A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) ) |
94 |
84 90 93
|
3bitrd |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. S ( ( s .x. X ) = Z -> s = .0. ) <-> ( { X } e. ~P B /\ A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) ) |
95 |
10 94
|
syl5bb |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. ( S \ { .0. } ) ( s .x. X ) =/= Z <-> ( { X } e. ~P B /\ A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) ) |
96 |
|
snex |
|- { X } e. _V |
97 |
1 5 2 3 4
|
islininds |
|- ( ( { X } e. _V /\ M e. LMod ) -> ( { X } linIndS M <-> ( { X } e. ~P B /\ A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) ) |
98 |
96 11 97
|
sylancr |
|- ( ( M e. LMod /\ X e. B ) -> ( { X } linIndS M <-> ( { X } e. ~P B /\ A. f e. ( S ^m { X } ) ( ( f finSupp .0. /\ ( f ( linC ` M ) { X } ) = Z ) -> A. y e. { X } ( f ` y ) = .0. ) ) ) ) |
99 |
95 98
|
bitr4d |
|- ( ( M e. LMod /\ X e. B ) -> ( A. s e. ( S \ { .0. } ) ( s .x. X ) =/= Z <-> { X } linIndS M ) ) |