let R be non empty doubleLoopStr ; for f, g being FinSequence of R st f is being_a_generation_from_squares & g is being_a_generation_from_squares holds
(f ^ g) ^ <*((f /. (len f)) + (g /. (len g)))*> is being_a_generation_from_squares
let f, g be FinSequence of R; ( f is being_a_generation_from_squares & g is being_a_generation_from_squares implies (f ^ g) ^ <*((f /. (len f)) + (g /. (len g)))*> is being_a_generation_from_squares )
assume that
A1:
f is being_a_generation_from_squares
and
A2:
g is being_a_generation_from_squares
; (f ^ g) ^ <*((f /. (len f)) + (g /. (len g)))*> is being_a_generation_from_squares
A3:
len g <> 0
by A2, Def14;
then A4:
(len f) + (len g) <> 0
by NAT_1:7;
len f <> 0
by A1, Def14;
then
1 <= len f
by NAT_1:25;
then
len f in dom f
by FINSEQ_3:25;
then A5:
( (len f) + (len g) <= len (f ^ g) & (f ^ g) /. (len f) = f /. (len f) )
by Lm1, FINSEQ_1:22;
len f <= (len f) + (len g)
by NAT_1:11;
then A6:
len f <= len (f ^ g)
by FINSEQ_1:22;
1 <= len g
by A3, NAT_1:25;
then
len g in dom g
by FINSEQ_3:25;
then A7:
(f ^ g) /. ((len f) + (len g)) = g /. (len g)
by Lm1;
( f ^ g is being_a_generation_from_squares & len f <> 0 )
by A1, A2, Def14, Lm33;
hence
(f ^ g) ^ <*((f /. (len f)) + (g /. (len g)))*> is being_a_generation_from_squares
by A6, A4, A5, A7, Lm61; verum