defpred S1[ object , object ] means ex b, c being Element of F1() st
( P1[$1,b,c] & $2 = [b,c] );
A2:
for e being object st e in F1() holds
ex u being object st
( u in [:F1(),F1():] & S1[e,u] )
proof
let e be
object ;
( e in F1() implies ex u being object st
( u in [:F1(),F1():] & S1[e,u] ) )
assume
e in F1()
;
ex u being object st
( u in [:F1(),F1():] & S1[e,u] )
then consider b,
c being
Element of
F1()
such that A3:
P1[
e,
b,
c]
by A1;
take u =
[b,c];
( u in [:F1(),F1():] & S1[e,u] )
thus
u in [:F1(),F1():]
;
S1[e,u]
thus
S1[
e,
u]
by A3;
verum
end;
consider f being Function such that
A4:
dom f = F1()
and
A5:
rng f c= [:F1(),F1():]
and
A6:
for e being object st e in F1() holds
S1[e,f . e]
from FUNCT_1:sch 6(A2);
deffunc H1( object ) -> object = IFEQ (($1 `2),0,((f . ($1 `1)) `1),((f . ($1 `1)) `2));
A7:
for x being object st x in [:F1(),NAT:] holds
H1(x) in F1()
consider F being Function of [:F1(),NAT:],F1() such that
A11:
for x being object st x in [:F1(),NAT:] holds
F . x = H1(x)
from FUNCT_2:sch 2(A7);
deffunc H2( set ) -> Element of omega = 2;
consider D being DecoratedTree of F1() such that
A12:
D . {} = F2()
and
A13:
for d being Element of dom D holds
( succ d = { (d ^ <*k*>) where k is Nat : k < H2(D . d) } & ( for n being Nat st n < H2(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*>),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*>),D . (x ^ <*1*>)] ) )
thus
D . {} = F2()
by A12; for x being Node of D holds P1[D . x,D . (x ^ <*0*>),D . (x ^ <*1*>)]
let x be Node of D; P1[D . x,D . (x ^ <*0*>),D . (x ^ <*1*>)]
for e being set st e in F1() holds
P1[e,F . (e,0),F . (e,1)]
proof
let e be
set ;
( e in F1() implies P1[e,F . (e,0),F . (e,1)] )
assume A18:
e in F1()
;
P1[e,F . (e,0),F . (e,1)]
then consider b,
c being
Element of
F1()
such that A19:
P1[
e,
b,
c]
and A20:
f . e = [b,c]
by A6;
[e,1] in [:F1(),NAT:]
by A18, ZFMISC_1:87;
then A21:
F . [e,1] =
IFEQ (
([e,1] `2),
0,
((f . ([e,1] `1)) `1),
((f . ([e,1] `1)) `2))
by A11
.=
(f . ([e,1] `1)) `2
by FUNCOP_1:def 8
.=
(f . e) `2
.=
c
by A20
;
[e,0] in [:F1(),NAT:]
by A18, ZFMISC_1:87;
then F . [e,0] =
IFEQ (
([e,0] `2),
0,
((f . ([e,0] `1)) `1),
((f . ([e,0] `1)) `2))
by A11
.=
(f . ([e,0] `1)) `1
by FUNCOP_1:def 8
.=
(f . e) `1
.=
b
by A20
;
hence
P1[
e,
F . (
e,
0),
F . (
e,1)]
by A19, A21;
verum
end;
then
P1[D . x,F . ((D . x),0),F . ((D . x),1)]
;
then
P1[D . x,D . (x ^ <*0*>),F . ((D . x),1)]
by A13;
hence
P1[D . x,D . (x ^ <*0*>),D . (x ^ <*1*>)]
by A13; verum