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)
proof
let d be Element of F1(); :: thesis: for k1, k2 being Element of NAT st k1 <= k2 & k2 in H2(d) holds
k1 in H2(d)

let k1, k2 be Element of NAT ; :: thesis: ( k1 <= k2 & k2 in H2(d) implies k1 in H2(d) )
assume A2: ( k1 <= k2 & k2 in { i where i is Element of NAT : i < F3(d) } ) ; :: thesis: k1 in H2(d)
then ex i being Element of NAT st
( k2 = i & i < F3(d) ) ;
then k1 < F3(d) by A2, XXREAL_0:2;
hence k1 in H2(d) ; :: thesis: verum
end;
consider T being DecoratedTree of such that
A3: ( 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 ; :: thesis: ( 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 A3; :: thesis: 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; :: thesis: ( 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 ) )

A4: succ t = { (t ^ <*k*>) where k is Element of NAT : k in H1(F3((T . t))) } by A3;
thus succ t c= { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } :: according to XBOOLE_0:def 10 :: thesis: ( { (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 ) )
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in succ t or x in { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } )
assume x in succ t ; :: thesis: x in { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) }
then consider l being Element of NAT such that
A5: ( x = t ^ <*l*> & l in H1(F3((T . t))) ) by A4;
ex i being Element of NAT st
( l = i & i < F3((T . t)) ) by A5;
hence x in { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } by A5; :: thesis: verum
end;
thus { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } c= succ t :: thesis: for n being Element of NAT st n < F3((T . t)) holds
T . (t ^ <*n*>) = F4() . (T . t),n
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } or x in succ t )
assume x in { (t ^ <*i*>) where i is Element of NAT : i < F3((T . t)) } ; :: thesis: x in succ t
then consider l being Element of NAT such that
A6: ( x = t ^ <*l*> & l < F3((T . t)) ) ;
l in H1(F3((T . t))) by A6;
hence x in succ t by A4, A6; :: thesis: verum
end;
let n be Element of NAT ; :: thesis: ( n < F3((T . t)) implies T . (t ^ <*n*>) = F4() . (T . t),n )
assume n < F3((T . t)) ; :: thesis: T . (t ^ <*n*>) = F4() . (T . t),n
then n in H1(F3((T . t))) ;
hence T . (t ^ <*n*>) = F4() . (T . t),n by A3; :: thesis: verum