let RS be RealLinearSpace; :: thesis: for X being Subset of RS
for g1, h1 being FinSequence of RS
for a1 being INT -valued FinSequence st rng g1 c= X & len g1 = len h1 & len g1 = len a1 & ( for i being Nat st i in Seg (len g1) holds
h1 /. i = (a1 . i) * (g1 /. i) ) holds
Sum h1 in Z_Lin X

let X be Subset of RS; :: thesis: for g1, h1 being FinSequence of RS
for a1 being INT -valued FinSequence st rng g1 c= X & len g1 = len h1 & len g1 = len a1 & ( for i being Nat st i in Seg (len g1) holds
h1 /. i = (a1 . i) * (g1 /. i) ) holds
Sum h1 in Z_Lin X

defpred S1[ Nat] means for g, h being FinSequence of RS
for s being INT -valued FinSequence st rng g c= X & len g = $1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) holds
Sum h in Z_Lin X;
A1: S1[ 0 ]
proof
let g, h be FinSequence of RS; :: thesis: for s being INT -valued FinSequence st rng g c= X & len g = 0 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) holds
Sum h in Z_Lin X

let s be INT -valued FinSequence; :: thesis: ( rng g c= X & len g = 0 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) implies Sum h in Z_Lin X )

set x = Sum h;
assume A2: ( rng g c= X & len g = 0 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) ) ; :: thesis: Sum h in Z_Lin X
Sum h = Sum (<*> the carrier of RS) by A2, FINSEQ_1:20
.= 0. RS by RLVECT_1:43 ;
hence Sum h in Z_Lin X by Th11; :: thesis: verum
end;
A3: now :: thesis: for n being Nat st S1[n] holds
S1[n + 1]
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume A4: S1[n] ; :: thesis: S1[n + 1]
now :: thesis: for g, h being FinSequence of RS
for s being INT -valued FinSequence
for x being set st x = Sum h & rng g c= X & len g = n + 1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) holds
x in Z_Lin X
let g, h be FinSequence of RS; :: thesis: for s being INT -valued FinSequence
for x being set st x = Sum h & rng g c= X & len g = n + 1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) holds
x in Z_Lin X

let s be INT -valued FinSequence; :: thesis: for x being set st x = Sum h & rng g c= X & len g = n + 1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) holds
x in Z_Lin X

let x be set ; :: thesis: ( x = Sum h & rng g c= X & len g = n + 1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) implies x in Z_Lin X )

assume A5: ( x = Sum h & rng g c= X & len g = n + 1 & len g = len h & len g = len s & ( for i being Nat st i in Seg (len g) holds
h /. i = (s . i) * (g /. i) ) ) ; :: thesis: x in Z_Lin X
reconsider gn = g | n as FinSequence of RS ;
reconsider hn = h | n as FinSequence of RS ;
reconsider sn = s | n as real-valued FinSequence ;
( rng gn c= X & len gn = n & len gn = len hn & len gn = len sn & ( for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i) ) )
proof
rng gn c= rng g by RELAT_1:70;
then A6: rng gn c= X by A5;
A7: n <= len g by A5, NAT_1:11;
A8: n <= len h by A5, NAT_1:11;
A9: len hn = n by A5, FINSEQ_1:59, NAT_1:11;
A10: len sn = n by A5, FINSEQ_1:59, NAT_1:11;
for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i)
proof
per cases ( n = 0 or n <> 0 ) ;
suppose n = 0 ; :: thesis: for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i)

hence for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i) ; :: thesis: verum
end;
suppose n <> 0 ; :: thesis: for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i)

then A11: n >= 1 by NAT_1:14;
let i be Nat; :: thesis: ( i in Seg (len gn) implies hn /. i = (sn . i) * (gn /. i) )
assume i in Seg (len gn) ; :: thesis: hn /. i = (sn . i) * (gn /. i)
then A12: i in Seg n by A5, FINSEQ_1:59, NAT_1:11;
n in Seg (len g) by A7, A11;
then n in dom g by FINSEQ_1:def 3;
then A13: gn /. i = g /. i by A12, FINSEQ_4:71;
n in Seg (len h) by A8, A11;
then n in dom h by FINSEQ_1:def 3;
then A14: hn /. i = h /. i by A12, FINSEQ_4:71;
i <= n by A12, FINSEQ_1:1;
then sn . i = s . i by FINSEQ_3:112;
hence hn /. i = (sn . i) * (gn /. i) by A5, A12, A13, A14, FINSEQ_2:8; :: thesis: verum
end;
end;
end;
hence ( rng gn c= X & len gn = n & len gn = len hn & len gn = len sn & ( for i being Nat st i in Seg (len gn) holds
hn /. i = (sn . i) * (gn /. i) ) ) by A6, A9, A10, A5, FINSEQ_1:59, NAT_1:11; :: thesis: verum
end;
then A15: Sum hn in Z_Lin X by A4;
A16: n + 1 in Seg (len g) by A5, FINSEQ_1:4;
A17: h /. (n + 1) = (s . (n + 1)) * (g /. (n + 1)) by A5, FINSEQ_1:4;
A18: h = hn ^ <*((s . (n + 1)) * (g /. (n + 1)))*> by A5, A17, FINSEQ_5:21;
A19: n + 1 in dom g by A16, FINSEQ_1:def 3;
then g /. (n + 1) = g . (n + 1) by PARTFUN1:def 6;
then g /. (n + 1) in rng g by A19, FUNCT_1:3;
then g /. (n + 1) in Z_Lin X by A5, Th12;
then A20: (s . (n + 1)) * (g /. (n + 1)) in Z_Lin X by Th10;
Sum h = (Sum hn) + (Sum <*((s . (n + 1)) * (g /. (n + 1)))*>) by A18, RLVECT_1:41
.= (Sum hn) + ((s . (n + 1)) * (g /. (n + 1))) by RLVECT_1:44 ;
hence x in Z_Lin X by A5, A15, A20, Th9; :: thesis: verum
end;
hence S1[n + 1] ; :: thesis: verum
end;
for n being Nat holds S1[n] from NAT_1:sch 2(A1, A3);
hence for g1, h1 being FinSequence of RS
for a1 being INT -valued FinSequence st rng g1 c= X & len g1 = len h1 & len g1 = len a1 & ( for i being Nat st i in Seg (len g1) holds
h1 /. i = (a1 . i) * (g1 /. i) ) holds
Sum h1 in Z_Lin X ; :: thesis: verum