let h1, h2 be XFinSequence of REAL ; :: thesis: Sum (h1 ^ h2) = (Sum h1) + (Sum h2)
per cases
( len (h1 ^ h2) > 0 or len (h1 ^ h2) <= 0 )
;
suppose A0:
len (h1 ^ h2) > 0
;
:: thesis: Sum (h1 ^ h2) = (Sum h1) + (Sum h2)per cases
( len h1 > 0 or len h1 <= 0 )
;
suppose A71:
len h1 > 0
;
:: thesis: Sum (h1 ^ h2) = (Sum h1) + (Sum h2)consider g1 being
XFinSequence of
REAL such that A1:
(
len h1 = len g1 &
h1 . 0 = g1 . 0 & ( for
i being
Nat st
i + 1
< len h1 holds
g1 . (i + 1) = (g1 . i) + (h1 . (i + 1)) ) &
Sum h1 = g1 . ((len h1) -' 1) )
by AC300;
per cases
( len h2 > 0 or len h2 <= 0 )
;
suppose A72:
len h2 > 0
;
:: thesis: Sum (h1 ^ h2) = (Sum h1) + (Sum h2)consider g2 being
XFinSequence of
REAL such that A2:
(
len h2 = len g2 &
h2 . 0 = g2 . 0 & ( for
i being
Nat st
i + 1
< len h2 holds
g2 . (i + 1) = (g2 . i) + (h2 . (i + 1)) ) &
Sum h2 = g2 . ((len h2) -' 1) )
by AC300;
set a =
g1 . ((len g1) -' 1);
set g2b =
g2 + (g1 . ((len g1) -' 1));
E4b:
(
len (g2 + (g1 . ((len g1) -' 1))) = len g2 & ( for
i being
Nat st
i < len g2 holds
(g2 + (g1 . ((len g1) -' 1))) . i = (g2 . i) + (g1 . ((len g1) -' 1)) ) )
by AC500;
set g4 =
g1 ^ (g2 + (g1 . ((len g1) -' 1)));
E10:
len (h1 ^ h2) =
(len g1) + (len g2)
by A1, A2, AFINSQ_1:20
.=
len (g1 ^ (g2 + (g1 . ((len g1) -' 1))))
by E4b, AFINSQ_1:20
;
E34:
(h1 ^ h2) . 0 =
h1 . 0
by AE359, A71
.=
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . 0
by AE359, A1, A71
;
E93:
len (h1 ^ h2) = (len g1) + (len (g2 + (g1 . ((len g1) -' 1))))
by A1, E4b, A2, AFINSQ_1:20;
E94:
len (h1 ^ h2) =
(len h1) + (len h2)
by AFINSQ_1:20
.=
len (g1 ^ (g2 + (g1 . ((len g1) -' 1))))
by A1, E4b, A2, AFINSQ_1:20
;
E95:
len g1 < len (h1 ^ h2)
by E93, E4b, A2, A72, XREAL_1:31;
E35:
for
i being
Nat st
i + 1
< len (h1 ^ h2) holds
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))
proof
let i be
Nat;
:: thesis: ( i + 1 < len (h1 ^ h2) implies (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1)) )
assume G1:
i + 1
< len (h1 ^ h2)
;
:: thesis: (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))
reconsider i0 =
i as
Element of
NAT by ORDINAL1:def 13;
per cases
( i + 1 < len g1 or i + 1 >= len g1 )
;
suppose H0:
i + 1
>= len g1
;
:: thesis: (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))per cases
( i + 1 > len g1 or i + 1 = len g1 )
by H0, XXREAL_0:1;
suppose J0:
i + 1
> len g1
;
:: thesis: (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))then
i >= len g1
by NAT_1:13;
then
i -' (len g1) = i - (len g1)
by XREAL_1:235;
then reconsider i1 =
i - (len g1) as
Element of
NAT ;
(i + 1) - (len g1) < (len (h1 ^ h2)) - (len g1)
by G1, XREAL_1:11;
then G1en:
i1 + 1
< ((len g1) + (len (g2 + (g1 . ((len g1) -' 1))))) - (len g1)
by A1, E4b, A2, AFINSQ_1:20;
i1 < i1 + 1
by XREAL_1:31;
then G3:
i1 < len (g2 + (g1 . ((len g1) -' 1)))
by G1en, XXREAL_0:2;
G5p:
i1 + 1
= (i0 + 1) - (len h1)
by A1;
(
len g1 <= i0 &
i0 < len (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) )
by J0, E94, G1, NAT_1:13;
then G4:
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i0 = (g2 + (g1 . ((len g1) -' 1))) . i1
by AFINSQ_1:22;
G5:
(h1 ^ h2) . (i0 + 1) = h2 . (i1 + 1)
by G5p, H0, G1, AFINSQ_1:22;
G51:
(g2 + (g1 . ((len g1) -' 1))) . i1 = (g2 . i1) + (g1 . ((len g1) -' 1))
by E4b, G3;
G52:
(g2 + (g1 . ((len g1) -' 1))) . (i1 + 1) = (g2 . (i1 + 1)) + (g1 . ((len g1) -' 1))
by E4b, G1en;
g2 . (i1 + 1) = (g2 . i1) + (h2 . (i1 + 1))
by A2, E4b, G1en;
hence
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))
by G5p, H0, E94, G1, G4, G5, G51, G52, AFINSQ_1:22;
:: thesis: verum end; suppose H0:
i + 1
= len g1
;
:: thesis: (g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))then H8:
i = (len g1) -' 1
by NAT_D:34;
G2r:
0 in dom (g2 + (g1 . ((len g1) -' 1)))
by A72, A2, E4b, NAT_1:45;
G2:
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) =
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . ((len g1) + 0 )
by H0
.=
(g2 + (g1 . ((len g1) -' 1))) . 0
by G2r, AFINSQ_1:def 4
;
0 + 1
<= len g1
by A71, A1, NAT_1:13;
then G34:
(len g1) -' 1
= (len g1) - 1
by XREAL_1:235;
len g1 < (len g1) + 1
by XREAL_1:31;
then
(len g1) - 1
< len g1
by XREAL_1:21;
then
(len g1) -' 1
in dom g1
by G34, NAT_1:45;
then G4:
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i = g1 . ((len g1) -' 1)
by H8, AFINSQ_1:def 4;
G65:
(len g1) - (len h1) = 0
by A1;
h2 . 0 = (h1 ^ h2) . (i + 1)
by H0, G65, E95, AFINSQ_1:22;
hence
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . (i + 1) = ((g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . i) + ((h1 ^ h2) . (i + 1))
by G2, G4, AC500, A72, A2;
:: thesis: verum end; end; end; end;
end;
len (h1 ^ h2) >= 0 + 1
by A0, NAT_1:13;
then R50:
(len g1) + (len (g2 + (g1 . ((len g1) -' 1)))) >= 1
by A1, A2, E4b, AFINSQ_1:20;
R4n:
len (g2 + (g1 . ((len g1) -' 1))) >= 0 + 1
by A2, E4b, A72, NAT_1:13;
then R4:
(len (g2 + (g1 . ((len g1) -' 1)))) -' 1
= (len (g2 + (g1 . ((len g1) -' 1)))) - 1
by XREAL_1:235;
R2:
((len g1) + (len (g2 + (g1 . ((len g1) -' 1))))) -' 1 =
((len g1) + (len (g2 + (g1 . ((len g1) -' 1))))) - 1
by R50, XREAL_1:235
.=
(len g1) + ((len (g2 + (g1 . ((len g1) -' 1)))) - 1)
.=
(len g1) + ((len (g2 + (g1 . ((len g1) -' 1)))) -' 1)
by R4n, XREAL_1:235
;
R7n:
(len (g2 + (g1 . ((len g1) -' 1)))) - 1
< len (g2 + (g1 . ((len g1) -' 1)))
by XREAL_1:46;
R3:
(len (g2 + (g1 . ((len g1) -' 1)))) -' 1
in dom (g2 + (g1 . ((len g1) -' 1)))
by R4, R7n, NAT_1:45;
R5:
(g1 ^ (g2 + (g1 . ((len g1) -' 1)))) . ((len (h1 ^ h2)) -' 1) = (g2 + (g1 . ((len g1) -' 1))) . ((len (g2 + (g1 . ((len g1) -' 1)))) -' 1)
by E93, R2, R3, AFINSQ_1:def 4;
(g1 . ((len g1) -' 1)) + (g2 . ((len h2) -' 1)) = (g2 + (g1 . ((len g1) -' 1))) . ((len h2) -' 1)
by E4b, A2, R4, XREAL_1:46;
hence
Sum (h1 ^ h2) = (Sum h1) + (Sum h2)
by AC300, E10, E34, E35, A1, A2, R5, E4b;
:: thesis: verum end; end; end; end; end; end;