deffunc H1( Element of NAT ) -> set = { i where i is Element of NAT : i < $1 } ;
deffunc H2( set ) -> set = H1(F3($1));
A1:
for d being Element of F1()
for k1, k2 being Element of NAT st k1 <= k2 & k2 in H2(d) holds
k1 in H2(d)
consider T being DecoratedTree of F1() such that
A5:
( T . {} = F2() & ( for t being Element of dom T holds
( succ t = { (t ^ <*k*>) where k is Element of NAT : k in H2(T . t) } & ( for n being Element of NAT st n in H2(T . t) holds
T . (t ^ <*n*>) = F4() . (T . t),n ) ) ) )
from TREES_2:sch 8(A1);
take
T
; ( T . {} = F2() & ( for t being Element of dom T holds
( succ t = { (t ^ <*k*>) where k is Element of NAT : k < F3((T . t)) } & ( for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n ) ) ) )
thus
T . {} = F2()
by A5; for t being Element of dom T holds
( succ t = { (t ^ <*k*>) where k is Element of NAT : k < F3((T . t)) } & ( for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n ) )
let t be Element of dom T; ( succ t = { (t ^ <*k*>) where k is Element of NAT : k < F3((T . t)) } & ( for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n ) )
A6:
succ t = { (t ^ <*k*>) where k is Element of NAT : k in H1(F3((T . t))) }
by A5;
thus
succ t c= { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) }
XBOOLE_0:def 10 ( { (t ^ <*k*>) where k is Element of NAT : k < F3((T . t)) } c= succ t & ( for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n ) )
thus
{ (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } c= succ t
for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n
let n be Element of NAT ; ( n < F3((T . t)) implies T . (t ^ <*n*>) = F4() . (T . t),n )
assume
n < F3((T . t))
; T . (t ^ <*n*>) = F4() . (T . t),n
then
n in H1(F3((T . t)))
;
hence
T . (t ^ <*n*>) = F4() . (T . t),n
by A5; verum