deffunc H1( set ) -> Element of omega = 2;
defpred S1[ object , object ] means ( ( $1 `2 = 0 implies P1[$1 `1 ,$2] ) & ( $1 `2 = 1 implies P2[$1 `1 ,$2] ) );
A3:
for e being object st e in [:F1(),NAT:] holds
ex u being object st
( u in F1() & S1[e,u] )
proof
let e be
object ;
( e in [:F1(),NAT:] implies ex u being object st
( u in F1() & S1[e,u] ) )
assume
e in [:F1(),NAT:]
;
ex u being object st
( u in F1() & S1[e,u] )
then reconsider e1 =
e `1 as
Element of
F1()
by MCART_1:10;
consider u1 being
Element of
F1()
such that A4:
P1[
e1,
u1]
by A1;
consider u2 being
Element of
F1()
such that A5:
P2[
e1,
u2]
by A2;
take u =
IFEQ (
(e `2),
0,
u1,
u2);
( u in F1() & S1[e,u] )
thus
u in F1()
;
S1[e,u]
thus
(
e `2 = 0 implies
P1[
e `1 ,
u] )
by A4, FUNCOP_1:def 8;
( e `2 = 1 implies P2[e `1 ,u] )
thus
(
e `2 = 1 implies
P2[
e `1 ,
u] )
by A5, FUNCOP_1:def 8;
verum
end;
consider F being Function such that
A6:
( dom F = [:F1(),NAT:] & rng F c= F1() )
and
A7:
for e being object st e in [:F1(),NAT:] holds
S1[e,F . e]
from FUNCT_1:sch 6(A3);
reconsider F = F as Function of [:F1(),NAT:],F1() by A6, FUNCT_2:2;
consider D being DecoratedTree of F1() such that
A8:
D . {} = F2()
and
A9:
for d being Element of dom D holds
( succ d = { (d ^ <*k*>) where k is Nat : k < H1(D . d) } & ( for n being Nat st n < H1(D . d) holds
D . (d ^ <*n*>) = F . ((D . d),n) ) )
from TREES_2:sch 9();
then
dom D is binary
by BINTREE1:def 2;
then reconsider D = D as binary DecoratedTree of F1() by BINTREE1:def 3;
take
D
; ( dom D = {0,1} * & D . {} = F2() & ( for x being Node of D holds
( P1[D . x,D . (x ^ <*0*>)] & P2[D . x,D . (x ^ <*1*>)] ) ) )
hence
dom D = {0,1} *
by Th8; ( D . {} = F2() & ( for x being Node of D holds
( P1[D . x,D . (x ^ <*0*>)] & P2[D . x,D . (x ^ <*1*>)] ) ) )
thus
D . {} = F2()
by A8; for x being Node of D holds
( P1[D . x,D . (x ^ <*0*>)] & P2[D . x,D . (x ^ <*1*>)] )
let x be Node of D; ( P1[D . x,D . (x ^ <*0*>)] & P2[D . x,D . (x ^ <*1*>)] )
[(D . x),0] `2 = 0
;
then
P1[[(D . x),0] `1 ,F . [(D . x),0]]
by A7;
then
P1[D . x,F . ((D . x),0)]
;
hence
P1[D . x,D . (x ^ <*0*>)]
by A9; P2[D . x,D . (x ^ <*1*>)]
[(D . x),1] `2 = 1
;
then
P2[[(D . x),1] `1 ,F . [(D . x),1]]
by A7;
then
P2[D . x,F . ((D . x),1)]
;
hence
P2[D . x,D . (x ^ <*1*>)]
by A9; verum