set f = F1();
set G = F2();
set D = F3();
deffunc H3( Symbol of F2(), FinSequence) -> Element of F3() = F5($1,(pr1 (roots $2)),(pr2 (roots $2)));
Union F1() c= FinTrees [: the carrier of F2(),F3():]
proof
let u be
object ;
TARSKI:def 3 ( not u in Union F1() or u in FinTrees [: the carrier of F2(),F3():] )
assume
u in Union F1()
;
u in FinTrees [: the carrier of F2(),F3():]
then A4:
ex
k being
object st
(
k in NAT &
u in F1()
. k )
by A1, CARD_5:2;
defpred S1[
Nat]
means for
u being
set st
u in F1()
. $1 holds
u in FinTrees [: the carrier of F2(),F3():];
A5:
S1[
0 ]
A6:
now for n being Nat st S1[n] holds
S1[n + 1]let n be
Nat;
( S1[n] implies S1[n + 1] )assume A7:
S1[
n]
;
S1[n + 1]thus
S1[
n + 1]
verumproof
let u be
set ;
( u in F1() . (n + 1) implies u in FinTrees [: the carrier of F2(),F3():] )
assume
u in F1()
. (n + 1)
;
u in FinTrees [: the carrier of F2(),F3():]
then
u in (F1() . n) \/ { ([o,H3(o,p)] -tree p) where o is Symbol of F2(), p is Element of (F1() . n) * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( p = q & o ==> pr1 (roots q) ) }
by A3;
then A8:
(
u in F1()
. n or
u in { ([o,H3(o,p)] -tree p) where o is Symbol of F2(), p is Element of (F1() . n) * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( p = q & o ==> pr1 (roots q) ) } )
by XBOOLE_0:def 3;
assume A9:
not
u in FinTrees [: the carrier of F2(),F3():]
;
contradiction
then consider o being
Symbol of
F2(),
p being
Element of
(F1() . n) * such that A10:
u = [o,H3(o,p)] -tree p
and A11:
ex
q being
FinSequence of
FinTrees [: the carrier of F2(),F3():] st
(
p = q &
o ==> pr1 (roots q) )
by A7, A8;
reconsider p =
p as
FinSequence of
FinTrees [: the carrier of F2(),F3():] by A11;
u = [o,H3(o,p)] -tree p
by A10;
hence
contradiction
by A9;
verum
end; end;
for
n being
Nat holds
S1[
n]
from NAT_1:sch 2(A5, A6);
hence
u in FinTrees [: the carrier of F2(),F3():]
by A4;
verum
end;
then reconsider X = Union F1() as Subset of (FinTrees [: the carrier of F2(),F3():]) ;
take
X
; ( X = Union F1() & ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in X ) & ( for o being Symbol of F2()
for p being FinSequence of X st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in X ) & ( for F being Subset of (FinTrees [: the carrier of F2(),F3():]) st ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in F ) & ( for o being Symbol of F2()
for p being FinSequence of F st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in F ) holds
X c= F ) )
thus
X = Union F1()
; ( ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in X ) & ( for o being Symbol of F2()
for p being FinSequence of X st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in X ) & ( for F being Subset of (FinTrees [: the carrier of F2(),F3():]) st ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in F ) & ( for o being Symbol of F2()
for p being FinSequence of F st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in F ) holds
X c= F ) )
hereby for F being Subset of (FinTrees [: the carrier of F2(),F3():]) st ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in F ) & ( for o being Symbol of F2()
for p being FinSequence of F st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in F ) holds
X c= F
let o be
Symbol of
F2();
for p being FinSequence of X st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in Xlet p be
FinSequence of
X;
( o ==> pr1 (roots p) implies [o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in X )assume A12:
o ==> pr1 (roots p)
;
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in Xset s =
pr1 (roots p);
set v =
pr2 (roots p);
A13:
dom p = Seg (len p)
by FINSEQ_1:def 3;
defpred S1[
set ,
set ]
means p . $1
in F1()
. $2;
A14:
for
x being
Nat st
x in Seg (len p) holds
ex
n being
Element of
NAT st
S1[
x,
n]
consider pn being
FinSequence of
NAT such that A16:
(
dom pn = Seg (len p) & ( for
k being
Nat st
k in Seg (len p) holds
S1[
k,
pn . k] ) )
from FINSEQ_1:sch 5(A14);
A17:
now ( rng pn <> {} implies ex n being Element of NAT st rng p c= F1() . n )defpred S2[
Element of
NAT ,
Element of
NAT ]
means $1
>= $2;
assume
rng pn <> {}
;
ex n being Element of NAT st rng p c= F1() . nthen A18:
(
rng pn is
finite &
rng pn <> {} &
rng pn c= NAT )
by FINSEQ_1:def 4;
A19:
for
x,
y being
Element of
NAT holds
(
S2[
x,
y] or
S2[
y,
x] )
;
A20:
for
x,
y,
z being
Element of
NAT st
S2[
x,
y] &
S2[
y,
z] holds
S2[
x,
z]
by XXREAL_0:2;
consider n being
Element of
NAT such that A21:
(
n in rng pn & ( for
y being
Element of
NAT st
y in rng pn holds
S2[
n,
y] ) )
from CQC_SIM1:sch 4(A18, A19, A20);
take n =
n;
rng p c= F1() . nthus
rng p c= F1()
. n
verumproof
let t be
object ;
TARSKI:def 3 ( not t in rng p or t in F1() . n )
assume
t in rng p
;
t in F1() . n
then consider k being
object such that A22:
k in dom p
and A23:
t = p . k
by FUNCT_1:def 3;
reconsider k =
k as
Element of
NAT by A22;
A24:
pn . k in rng pn
by A13, A16, A22, FUNCT_1:def 3;
then reconsider pnk =
pn . k as
Element of
NAT by A18;
consider s being
Nat such that A25:
n = pnk + s
by A21, A24, NAT_1:10;
deffunc H4(
set ,
set )
-> set =
{ ([o1,F5(o1,(pr1 (roots p1)),(pr2 (roots p1)))] -tree p1) where o1 is Symbol of F2(), p1 is Element of (F1() . $1) * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( p1 = q & o1 ==> pr1 (roots q) ) } ;
for
n being
Nat holds
F1()
. n c= F1()
. (n + 1)
then A26:
F1()
. pnk c= F1()
. n
by A25, MEASURE2:18, NAT_1:11;
t in F1()
. (pn . k)
by A13, A16, A22, A23;
hence
t in F1()
. n
by A26;
verum
end; end; then consider n being
Element of
NAT such that A27:
rng p c= F1()
. n
by A17;
A28:
X = union (rng F1())
by CARD_3:def 4;
F1()
. n in rng F1()
by A1, FUNCT_1:def 3;
then
F1()
. n c= X
by A28, ZFMISC_1:74;
then reconsider fn =
F1()
. n as
Subset of
(FinTrees [: the carrier of F2(),F3():]) by XBOOLE_1:1;
reconsider q =
p as
FinSequence of
fn by A27, FINSEQ_1:def 4;
reconsider q9 =
q as
Element of
fn * by FINSEQ_1:def 11;
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree q9 in { ([oo,H3(oo,pp)] -tree pp) where oo is Symbol of F2(), pp is Element of fn * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( pp = q & oo ==> pr1 (roots q) ) }
by A12;
then
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree q9 in (F1() . n) \/ { ([oo,H3(oo,pp)] -tree pp) where oo is Symbol of F2(), pp is Element of fn * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( pp = q & oo ==> pr1 (roots q) ) }
by XBOOLE_0:def 3;
then
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree q9 in F1()
. (n + 1)
by A3;
hence
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in X
by A1, CARD_5:2;
verum
end;
let F be Subset of (FinTrees [: the carrier of F2(),F3():]); ( ( for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in F ) & ( for o being Symbol of F2()
for p being FinSequence of F st o ==> pr1 (roots p) holds
[o,F5(o,(pr1 (roots p)),(pr2 (roots p)))] -tree p in F ) implies X c= F )
assume that
A29:
for d being Symbol of F2() st d in Terminals F2() holds
root-tree [d,F4(d)] in F
and
A30:
for o being Symbol of F2()
for p being FinSequence of F st o ==> pr1 (roots p) holds
[o,H3(o,p)] -tree p in F
; X c= F
defpred S1[ Nat] means F1() . $1 c= F;
A31:
S1[ 0 ]
proof
let x be
object ;
TARSKI:def 3 ( not x in F1() . 0 or x in F )
reconsider p =
<*> F as
FinSequence of
F ;
assume
x in F1()
. 0
;
x in F
then consider t being
Symbol of
F2(),
d being
Element of
F3()
such that A32:
x = root-tree [t,d]
and A33:
( (
t in Terminals F2() &
d = F4(
t) ) or (
t ==> pr1 (roots p) &
d = H3(
t,
p) ) )
by A2, Th3, Th7;
[t,d] -tree p = root-tree [t,d]
by TREES_4:20;
hence
x in F
by A29, A30, A32, A33;
verum
end;
A34:
now for n being Nat st S1[n] holds
S1[n + 1]let n be
Nat;
( S1[n] implies S1[n + 1] )assume A35:
S1[
n]
;
S1[n + 1]thus
S1[
n + 1]
verumproof
let x be
object ;
TARSKI:def 3 ( not x in F1() . (n + 1) or x in F )
assume that A36:
x in F1()
. (n + 1)
and A37:
not
x in F
;
contradiction
x in (F1() . n) \/ { ([oo,H3(oo,pp)] -tree pp) where oo is Symbol of F2(), pp is Element of (F1() . n) * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( pp = q & oo ==> pr1 (roots q) ) }
by A3, A36;
then
(
x in F1()
. n or
x in { ([oo,H3(oo,pp)] -tree pp) where oo is Symbol of F2(), pp is Element of (F1() . n) * : ex q being FinSequence of FinTrees [: the carrier of F2(),F3():] st
( pp = q & oo ==> pr1 (roots q) ) } )
by XBOOLE_0:def 3;
then consider o being
Symbol of
F2(),
p being
Element of
(F1() . n) * such that A38:
x = [o,H3(o,p)] -tree p
and A39:
ex
q being
FinSequence of
FinTrees [: the carrier of F2(),F3():] st
(
p = q &
o ==> pr1 (roots q) )
by A35, A37;
rng p c= F1()
. n
by FINSEQ_1:def 4;
then
rng p c= F
by A35, XBOOLE_1:1;
then reconsider p =
p as
FinSequence of
F by FINSEQ_1:def 4;
o ==> pr1 (roots p)
by A39;
hence
contradiction
by A30, A37, A38;
verum
end; end;
A40:
for n being Nat holds S1[n]
from NAT_1:sch 2(A31, A34);
thus
X c= F
verum