let V be RealLinearSpace; for A being Subset of V
for x being set
for g1, h1 being FinSequence of V
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & 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
x in Z_Lin A
let A be Subset of V; for x being set
for g1, h1 being FinSequence of V
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & 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
x in Z_Lin A
reconsider z0 = 0 as Element of INT by NUMBERS:17, TARSKI:def 3;
reconsider z1 = 1 as Element of INT by NUMBERS:17, TARSKI:def 3;
defpred S1[ Nat] means for x being set
for g1, h1 being FinSequence of V
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & len g1 = $1 & 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
x in Z_Lin A;
P0:
S1[ 0 ]
P1:
now let n be
Nat;
( S1[n] implies S1[n + 1] )assume P2:
S1[
n]
;
S1[n + 1]now let x be
set ;
for g1, h1 being FinSequence of V
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & len g1 = n + 1 & 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 Alet g1,
h1 be
FinSequence of
V;
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & len g1 = n + 1 & 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 Alet a1 be
integer-valued FinSequence;
( x = Sum h1 & rng g1 c= Z_Lin A & len g1 = n + 1 & 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) ) implies Sum h1 in Z_Lin A )assume AS1:
(
x = Sum h1 &
rng g1 c= Z_Lin A &
len g1 = n + 1 &
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) ) )
;
Sum h1 in Z_Lin Areconsider gn =
g1 | n as
FinSequence of
V ;
reconsider hn =
h1 | n as
FinSequence of
V ;
reconsider an =
a1 | n as
integer-valued FinSequence ;
Q0:
(
rng gn c= Z_Lin A &
len gn = n &
len gn = len an &
len gn = len hn & ( for
i being
Nat st
i in Seg (len gn) holds
hn /. i = (an . i) * (gn /. i) ) )
proof
B0:
rng gn c= rng g1
by RELAT_1:99;
B1:
n <= len g1
by AS1, NAT_1:11;
B3:
n <= len h1
by AS1, NAT_1:11;
B4:
len hn = n
by AS1, NAT_1:11, FINSEQ_1:80;
B5:
len an = n
by AS1, NAT_1:11, FINSEQ_1:80;
for
i being
Nat st
i in Seg (len gn) holds
hn /. i = (an . i) * (gn /. i)
proof
per cases
( n = 0 or n <> 0 )
;
suppose
n <> 0
;
for i being Nat st i in Seg (len gn) holds
hn /. i = (an . i) * (gn /. i)then C1:
n >= 1
by NAT_1:14;
let i be
Nat;
( i in Seg (len gn) implies hn /. i = (an . i) * (gn /. i) )assume
i in Seg (len gn)
;
hn /. i = (an . i) * (gn /. i)then C2:
i in Seg n
by AS1, NAT_1:11, FINSEQ_1:80;
n in Seg (len g1)
by B1, C1, FINSEQ_1:3;
then
n in dom g1
by FINSEQ_1:def 3;
then C4:
gn /. i = g1 /. i
by C2, FINSEQ_4:86;
n in Seg (len h1)
by B3, C1, FINSEQ_1:3;
then
n in dom h1
by FINSEQ_1:def 3;
then C5:
hn /. i = h1 /. i
by C2, FINSEQ_4:86;
i <= n
by C2, FINSEQ_1:3;
then
an . i = a1 . i
by FINSEQ_3:121;
hence
hn /. i = (an . i) * (gn /. i)
by AS1, C2, C4, C5, FINSEQ_2:9;
verum end; end;
end;
hence
(
rng gn c= Z_Lin A &
len gn = n &
len gn = len an &
len gn = len hn & ( for
i being
Nat st
i in Seg (len gn) holds
hn /. i = (an . i) * (gn /. i) ) )
by AS1, B0, B1, B4, B5, FINSEQ_1:80, XBOOLE_1:1;
verum
end; Q2:
n + 1
in Seg (len g1)
by AS1, FINSEQ_1:6;
Q3:
h1 /. (n + 1) = (a1 . (n + 1)) * (g1 /. (n + 1))
by AS1, FINSEQ_1:6;
Q4:
h1 = hn ^ <*((a1 . (n + 1)) * (g1 /. (n + 1)))*>
by AS1, Q3, FINSEQ_5:24;
Q5:
n + 1
in dom g1
by Q2, FINSEQ_1:def 3;
then
g1 /. (n + 1) = g1 . (n + 1)
by PARTFUN1:def 8;
then
g1 /. (n + 1) in rng g1
by Q5, FUNCT_1:12;
then
(
(z1 * (a1 . (n + 1))) * (g1 /. (n + 1)) in Z_Lin A &
z0 * (g1 /. (n + 1)) in Z_Lin A )
by AS1, LM020;
then
((z1 * (a1 . (n + 1))) * (g1 /. (n + 1))) + (z0 * (g1 /. (n + 1))) in Z_Lin A
by LM010;
then
((z1 * (a1 . (n + 1))) * (g1 /. (n + 1))) + (0. V) in Z_Lin A
by RLVECT_1:23;
then Q7:
(z1 * (a1 . (n + 1))) * (g1 /. (n + 1)) in Z_Lin A
by RLVECT_1:10;
z1 * (Sum hn) in Z_Lin A
by P2, Q0, LM020;
then Q8:
(z1 * (Sum hn)) + ((z1 * (a1 . (n + 1))) * (g1 /. (n + 1))) in Z_Lin A
by Q7, LM010;
Sum h1 =
(Sum hn) + (Sum <*((a1 . (n + 1)) * (g1 /. (n + 1)))*>)
by Q4, RLVECT_1:58
.=
(Sum hn) + ((a1 . (n + 1)) * (g1 /. (n + 1)))
by RLVECT_1:61
;
hence
Sum h1 in Z_Lin A
by Q8, RLVECT_1:def 11;
verum end; hence
S1[
n + 1]
;
verum end;
for n being Nat holds S1[n]
from NAT_1:sch 2(P0, P1);
hence
for x being set
for g1, h1 being FinSequence of V
for a1 being integer-valued FinSequence st x = Sum h1 & rng g1 c= Z_Lin A & 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
x in Z_Lin A
; verum