defpred S1[ Nat] means for F being FinSequence of F_Real
for G being FinSequence of INT.Ring st len F = $1 & F = G holds
Sum F = Sum G;
P1:
S1[ 0 ]
P2:
for n being Nat st S1[n] holds
S1[n + 1]
proof
let n be
Nat;
( S1[n] implies S1[n + 1] )
assume AS1:
S1[
n]
;
S1[n + 1]
let F be
FinSequence of
F_Real;
for G being FinSequence of INT.Ring st len F = n + 1 & F = G holds
Sum F = Sum Glet G be
FinSequence of
INT.Ring;
( len F = n + 1 & F = G implies Sum F = Sum G )
assume AS2:
(
len F = n + 1 &
F = G )
;
Sum F = Sum G
reconsider F0 =
F | n as
FinSequence of
F_Real ;
n + 1
in Seg (n + 1)
by FINSEQ_1:4;
then
n + 1
in dom F
by AS2, FINSEQ_1:def 3;
then
F . (n + 1) in rng F
by FUNCT_1:3;
then reconsider af =
F . (n + 1) as
Element of
F_Real ;
P1:
len F0 = n
by FINSEQ_1:59, AS2, NAT_1:11;
then P4:
dom F0 = Seg n
by FINSEQ_1:def 3;
A9:
len F = (len F0) + 1
by AS2, FINSEQ_1:59, NAT_1:11;
F0 = F | (dom F0)
by P4, FINSEQ_1:def 16;
then P3:
Sum F = (Sum F0) + af
by AS2, A9, RLVECT_1:38;
reconsider G0 =
G | n as
FinSequence of
INT.Ring ;
n + 1
in Seg (n + 1)
by FINSEQ_1:4;
then
n + 1
in dom G
by AS2, FINSEQ_1:def 3;
then
G . (n + 1) in rng G
by FUNCT_1:3;
then reconsider bf =
G . (n + 1) as
Element of
INT.Ring ;
(
len G = n + 1 &
G0 = G | (Seg n) )
by AS2, FINSEQ_1:def 16;
then
G = G0 ^ <*bf*>
by FINSEQ_3:55;
then
Sum G = (Sum G0) + bf
by FVSUM_1:71;
hence
Sum F = Sum G
by AS1, AS2, P1, P3;
verum
end;
X1:
for n being Nat holds S1[n]
from NAT_1:sch 2(P1, P2);
let F be FinSequence of F_Real; for G being FinSequence of INT.Ring st F = G holds
Sum F = Sum G
let G be FinSequence of INT.Ring; ( F = G implies Sum F = Sum G )
assume X2:
F = G
; Sum F = Sum G
len F is Nat
;
hence
Sum F = Sum G
by X1, X2; verum