let R be Ring; :: thesis: for V being RightMod of R
for A being Subset of V st 0. R <> 1_ R holds
( ( A <> {} & A is linearly-closed ) iff for l being Linear_Combination of A holds Sum l in A )

let V be RightMod of R; :: thesis: for A being Subset of V st 0. R <> 1_ R holds
( ( A <> {} & A is linearly-closed ) iff for l being Linear_Combination of A holds Sum l in A )

let A be Subset of V; :: thesis: ( 0. R <> 1_ R implies ( ( A <> {} & A is linearly-closed ) iff for l being Linear_Combination of A holds Sum l in A ) )
assume A1: 0. R <> 1_ R ; :: thesis: ( ( A <> {} & A is linearly-closed ) iff for l being Linear_Combination of A holds Sum l in A )
thus ( A <> {} & A is linearly-closed implies for l being Linear_Combination of A holds Sum l in A ) :: thesis: ( ( for l being Linear_Combination of A holds Sum l in A ) implies ( A <> {} & A is linearly-closed ) )
proof
defpred S1[ Nat] means for l being Linear_Combination of A st card (Carrier l) = $1 holds
Sum l in A;
assume that
A2: A <> {} and
A3: A is linearly-closed ; :: thesis: for l being Linear_Combination of A holds Sum l in A
now :: thesis: for l being Linear_Combination of A st card (Carrier l) = 0 holds
Sum l in A
let l be Linear_Combination of A; :: thesis: ( card (Carrier l) = 0 implies Sum l in A )
assume card (Carrier l) = 0 ; :: thesis: Sum l in A
then Carrier l = {} ;
then l = ZeroLC V by Def4;
then Sum l = 0. V by Lm3;
hence Sum l in A by A2, A3, RMOD_2:1; :: thesis: verum
end;
then A4: S1[ 0 ] ;
now :: thesis: for k being Nat st ( for l being Linear_Combination of A st card (Carrier l) = k holds
Sum l in A ) holds
for l being Linear_Combination of A st card (Carrier l) = k + 1 holds
Sum l in A
let k be Nat; :: thesis: ( ( for l being Linear_Combination of A st card (Carrier l) = k holds
Sum l in A ) implies for l being Linear_Combination of A st card (Carrier l) = k + 1 holds
Sum l in A )

assume A5: for l being Linear_Combination of A st card (Carrier l) = k holds
Sum l in A ; :: thesis: for l being Linear_Combination of A st card (Carrier l) = k + 1 holds
Sum l in A

let l be Linear_Combination of A; :: thesis: ( card (Carrier l) = k + 1 implies Sum l in A )
deffunc H1( Element of V) -> Element of the carrier of R = l . $1;
consider F being FinSequence of V such that
A6: F is one-to-one and
A7: rng F = Carrier l and
A8: Sum l = Sum (l (#) F) by Def7;
reconsider G = F | (Seg k) as FinSequence of V by FINSEQ_1:18;
assume A9: card (Carrier l) = k + 1 ; :: thesis: Sum l in A
then A10: len F = k + 1 by A6, A7, FINSEQ_4:62;
then A11: len (l (#) F) = k + 1 by Def6;
A12: k + 1 in Seg (k + 1) by FINSEQ_1:4;
then A13: k + 1 in dom F by A10, FINSEQ_1:def 3;
k + 1 in dom F by A10, A12, FINSEQ_1:def 3;
then reconsider v = F . (k + 1) as Vector of V by FINSEQ_2:11;
consider f being Function of V,R such that
A14: f . v = 0. R and
A15: for u being Element of V st u <> v holds
f . u = H1(u) from FUNCT_2:sch 6();
reconsider f = f as Element of Funcs ( the carrier of V, the carrier of R) by FUNCT_2:8;
A16: v in Carrier l by A7, A13, FUNCT_1:def 3;
now :: thesis: for u being Vector of V st not u in Carrier l holds
f . u = 0. R
let u be Vector of V; :: thesis: ( not u in Carrier l implies f . u = 0. R )
assume A17: not u in Carrier l ; :: thesis: f . u = 0. R
hence f . u = l . u by A16, A15
.= 0. R by A17 ;
:: thesis: verum
end;
then reconsider f = f as Linear_Combination of V by Def2;
A18: A \ {v} c= A by XBOOLE_1:36;
A19: Carrier l c= A by Def5;
then A20: v * (l . v) in A by A3, A16;
A21: Carrier f = (Carrier l) \ {v}
proof
thus Carrier f c= (Carrier l) \ {v} :: according to XBOOLE_0:def 10 :: thesis: (Carrier l) \ {v} c= Carrier f
proof
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in Carrier f or x in (Carrier l) \ {v} )
assume x in Carrier f ; :: thesis: x in (Carrier l) \ {v}
then consider u being Vector of V such that
A22: u = x and
A23: f . u <> 0. R ;
f . u = l . u by A14, A15, A23;
then A24: x in Carrier l by A22, A23;
not x in {v} by A14, A22, A23, TARSKI:def 1;
hence x in (Carrier l) \ {v} by A24, XBOOLE_0:def 5; :: thesis: verum
end;
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in (Carrier l) \ {v} or x in Carrier f )
assume A25: x in (Carrier l) \ {v} ; :: thesis: x in Carrier f
then x in Carrier l by XBOOLE_0:def 5;
then consider u being Vector of V such that
A26: x = u and
A27: l . u <> 0. R ;
not x in {v} by A25, XBOOLE_0:def 5;
then x <> v by TARSKI:def 1;
then l . u = f . u by A15, A26;
hence x in Carrier f by A26, A27; :: thesis: verum
end;
then Carrier f c= A \ {v} by A19, XBOOLE_1:33;
then Carrier f c= A by A18;
then reconsider f = f as Linear_Combination of A by Def5;
A28: len G = k by A10, FINSEQ_3:53;
then A29: len (f (#) G) = k by Def6;
A30: rng G = Carrier f
proof
thus rng G c= Carrier f :: according to XBOOLE_0:def 10 :: thesis: Carrier f c= rng G
proof
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in rng G or x in Carrier f )
assume x in rng G ; :: thesis: x in Carrier f
then consider y being object such that
A31: y in dom G and
A32: G . y = x by FUNCT_1:def 3;
reconsider y = y as Nat by A31, FINSEQ_3:23;
A33: ( dom G c= dom F & G . y = F . y ) by A31, FUNCT_1:47, RELAT_1:60;
then A35: not x in {v} by TARSKI:def 1;
x in rng F by A31, A32, A33, FUNCT_1:def 3;
hence x in Carrier f by A7, A21, A35, XBOOLE_0:def 5; :: thesis: verum
end;
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in Carrier f or x in rng G )
assume A36: x in Carrier f ; :: thesis: x in rng G
then x in rng F by A7, A21, XBOOLE_0:def 5;
then consider y being object such that
A37: y in dom F and
A38: F . y = x by FUNCT_1:def 3;
reconsider y = y as Element of NAT by A37, FINSEQ_3:23;
then y in (dom F) /\ (Seg k) by A37, XBOOLE_0:def 4;
then A39: y in dom G by RELAT_1:61;
then G . y = F . y by FUNCT_1:47;
hence x in rng G by A38, A39, FUNCT_1:def 3; :: thesis: verum
end;
(Seg (k + 1)) /\ (Seg k) = Seg k by FINSEQ_1:7, NAT_1:12
.= dom (f (#) G) by A29, FINSEQ_1:def 3 ;
then A40: dom (f (#) G) = (dom (l (#) F)) /\ (Seg k) by A11, FINSEQ_1:def 3;
now :: thesis: for x being object st x in dom (f (#) G) holds
(f (#) G) . x = (l (#) F) . x
let x be object ; :: thesis: ( x in dom (f (#) G) implies (f (#) G) . x = (l (#) F) . x )
A41: rng F c= the carrier of V by FINSEQ_1:def 4;
assume A42: x in dom (f (#) G) ; :: thesis: (f (#) G) . x = (l (#) F) . x
then reconsider n = x as Nat by FINSEQ_3:23;
n in dom (l (#) F) by A40, A42, XBOOLE_0:def 4;
then A43: n in dom F by A10, A11, FINSEQ_3:29;
then F . n in rng F by FUNCT_1:def 3;
then reconsider w = F . n as Vector of V by A41;
A44: n in dom G by A28, A29, A42, FINSEQ_3:29;
then A45: G . n in rng G by FUNCT_1:def 3;
rng G c= the carrier of V by FINSEQ_1:def 4;
then reconsider u = G . n as Vector of V by A45;
not u in {v} by A21, A30, A45, XBOOLE_0:def 5;
then A46: u <> v by TARSKI:def 1;
A47: (f (#) G) . n = u * (f . u) by A44, Th23
.= u * (l . u) by A15, A46 ;
w = u by A44, FUNCT_1:47;
hence (f (#) G) . x = (l (#) F) . x by A47, A43, Th23; :: thesis: verum
end;
then f (#) G = (l (#) F) | (Seg k) by A40, FUNCT_1:46;
then A48: f (#) G = (l (#) F) | (dom (f (#) G)) by A29, FINSEQ_1:def 3;
v in rng F by A13, FUNCT_1:def 3;
then {v} c= Carrier l by A7, ZFMISC_1:31;
then card (Carrier f) = (k + 1) - (card {v}) by A9, A21, CARD_2:44
.= (k + 1) - 1 by CARD_1:30
.= k by XCMPLX_1:26 ;
then A49: Sum f in A by A5;
G is one-to-one by A6, FUNCT_1:52;
then A50: Sum (f (#) G) = Sum f by A30, Def7;
(l (#) F) . (len F) = v * (l . v) by A10, A13, Th23;
then Sum (l (#) F) = (Sum (f (#) G)) + (v * (l . v)) by A10, A11, A29, A48, RLVECT_1:38;
hence Sum l in A by A3, A8, A20, A50, A49; :: thesis: verum
end;
then A51: for k being Nat st S1[k] holds
S1[k + 1] ;
let l be Linear_Combination of A; :: thesis: Sum l in A
A52: card (Carrier l) = card (Carrier l) ;
for k being Nat holds S1[k] from NAT_1:sch 2(A4, A51);
hence Sum l in A by A52; :: thesis: verum
end;
assume A53: for l being Linear_Combination of A holds Sum l in A ; :: thesis: ( A <> {} & A is linearly-closed )
hence A <> {} ; :: thesis: A is linearly-closed
( ZeroLC V is Linear_Combination of A & Sum (ZeroLC V) = 0. V ) by Lm3, Th20;
then A54: 0. V in A by A53;
A55: for a being Scalar of R
for v being Vector of V st v in A holds
v * a in A
proof
let a be Scalar of R; :: thesis: for v being Vector of V st v in A holds
v * a in A

let v be Vector of V; :: thesis: ( v in A implies v * a in A )
assume A56: v in A ; :: thesis: v * a in A
now :: thesis: v * a in A
per cases ( a = 0. R or a <> 0. R ) ;
suppose A57: a <> 0. R ; :: thesis: v * a in A
deffunc H1( Element of V) -> Element of the carrier of R = 0. R;
consider f being Function of V,R such that
A58: f . v = a and
A59: for u being Element of V st u <> v holds
f . u = H1(u) from FUNCT_2:sch 6();
reconsider f = f as Element of Funcs ( the carrier of V, the carrier of R) by FUNCT_2:8;
now :: thesis: for u being Vector of V st not u in {v} holds
f . u = 0. R
let u be Vector of V; :: thesis: ( not u in {v} implies f . u = 0. R )
assume not u in {v} ; :: thesis: f . u = 0. R
then u <> v by TARSKI:def 1;
hence f . u = 0. R by A59; :: thesis: verum
end;
then reconsider f = f as Linear_Combination of V by Def2;
A60: Carrier f = {v}
proof
thus Carrier f c= {v} :: according to XBOOLE_0:def 10 :: thesis: {v} c= Carrier f
proof
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in Carrier f or x in {v} )
assume x in Carrier f ; :: thesis: x in {v}
then consider u being Vector of V such that
A61: x = u and
A62: f . u <> 0. R ;
u = v by A59, A62;
hence x in {v} by A61, TARSKI:def 1; :: thesis: verum
end;
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in {v} or x in Carrier f )
assume x in {v} ; :: thesis: x in Carrier f
then x = v by TARSKI:def 1;
hence x in Carrier f by A57, A58; :: thesis: verum
end;
{v} c= A by A56, ZFMISC_1:31;
then reconsider f = f as Linear_Combination of A by A60, Def5;
consider F being FinSequence of V such that
A63: ( F is one-to-one & rng F = Carrier f ) and
A64: Sum (f (#) F) = Sum f by Def7;
F = <*v*> by A60, A63, FINSEQ_3:97;
then f (#) F = <*(v * (f . v))*> by Th25;
then Sum f = v * a by A58, A64, RLVECT_1:44;
hence v * a in A by A53; :: thesis: verum
end;
end;
end;
hence v * a in A ; :: thesis: verum
end;
thus for v, u being Vector of V st v in A & u in A holds
v + u in A :: according to RMOD_2:def 1 :: thesis: for b1 being Element of the carrier of R
for b2 being Element of the carrier of V holds
( not b2 in A or b2 * b1 in A )
proof
let v, u be Vector of V; :: thesis: ( v in A & u in A implies v + u in A )
assume that
A65: v in A and
A66: u in A ; :: thesis: v + u in A
now :: thesis: v + u in A
per cases ( u = v or v <> u ) ;
suppose u = v ; :: thesis: v + u in A
then v + u = (v * (1_ R)) + v by VECTSP_2:def 9
.= (v * (1_ R)) + (v * (1_ R)) by VECTSP_2:def 9
.= v * ((1_ R) + (1_ R)) by VECTSP_2:def 9 ;
hence v + u in A by A55, A65; :: thesis: verum
end;
suppose A67: v <> u ; :: thesis: v + u in A
deffunc H1( Element of V) -> Element of the carrier of R = 0. R;
consider f being Function of V,R such that
A68: ( f . v = 1_ R & f . u = 1_ R ) and
A69: for w being Element of V st w <> v & w <> u holds
f . w = H1(w) from FUNCT_2:sch 7(A67);
reconsider f = f as Element of Funcs ( the carrier of V, the carrier of R) by FUNCT_2:8;
now :: thesis: for w being Vector of V st not w in {v,u} holds
f . w = 0. R
let w be Vector of V; :: thesis: ( not w in {v,u} implies f . w = 0. R )
assume not w in {v,u} ; :: thesis: f . w = 0. R
then ( w <> v & w <> u ) by TARSKI:def 2;
hence f . w = 0. R by A69; :: thesis: verum
end;
then reconsider f = f as Linear_Combination of V by Def2;
A70: Carrier f = {v,u}
proof
thus Carrier f c= {v,u} :: according to XBOOLE_0:def 10 :: thesis: {v,u} c= Carrier f
proof
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in Carrier f or x in {v,u} )
assume x in Carrier f ; :: thesis: x in {v,u}
then ex w being Vector of V st
( x = w & f . w <> 0. R ) ;
then ( x = v or x = u ) by A69;
hence x in {v,u} by TARSKI:def 2; :: thesis: verum
end;
let x be object ; :: according to TARSKI:def 3 :: thesis: ( not x in {v,u} or x in Carrier f )
assume x in {v,u} ; :: thesis: x in Carrier f
then ( x = v or x = u ) by TARSKI:def 2;
hence x in Carrier f by A1, A68; :: thesis: verum
end;
then A71: Carrier f c= A by A65, A66, ZFMISC_1:32;
A72: ( u * (1_ R) = u & v * (1_ R) = v ) by VECTSP_2:def 9;
reconsider f = f as Linear_Combination of A by A71, Def5;
consider F being FinSequence of V such that
A73: ( F is one-to-one & rng F = Carrier f ) and
A74: Sum (f (#) F) = Sum f by Def7;
( F = <*v,u*> or F = <*u,v*> ) by A67, A70, A73, FINSEQ_3:99;
then ( f (#) F = <*(v * (1_ R)),(u * (1_ R))*> or f (#) F = <*(u * (1_ R)),(v * (1_ R))*> ) by A68, Th26;
then Sum f = v + u by A74, A72, RLVECT_1:45;
hence v + u in A by A53; :: thesis: verum
end;
end;
end;
hence v + u in A ; :: thesis: verum
end;
thus for b1 being Element of the carrier of R
for b2 being Element of the carrier of V holds
( not b2 in A or b2 * b1 in A ) by A55; :: thesis: verum