let T1, T2 be Tree; ( ( T1 is binary & T2 is binary ) iff tree (T1,T2) is binary )
set RT = tree (T1,T2);
hereby ( tree (T1,T2) is binary implies ( T1 is binary & T2 is binary ) )
assume that A1:
T1 is
binary
and A2:
T2 is
binary
;
tree (T1,T2) is binary now for t being Element of tree (T1,T2) st not t in Leaves (tree (T1,T2)) holds
succ t = {(t ^ <*0*>),(t ^ <*1*>)}let t be
Element of
tree (
T1,
T2);
( not t in Leaves (tree (T1,T2)) implies succ b1 = {(b1 ^ <*0*>),(b1 ^ <*1*>)} )assume A3:
not
t in Leaves (tree (T1,T2))
;
succ b1 = {(b1 ^ <*0*>),(b1 ^ <*1*>)}per cases
( t = {} or ex p being FinSequence st
( ( p in T1 & t = <*0*> ^ p ) or ( p in T2 & t = <*1*> ^ p ) ) )
by TREES_3:68;
suppose
ex
p being
FinSequence st
( (
p in T1 &
t = <*0*> ^ p ) or (
p in T2 &
t = <*1*> ^ p ) )
;
succ b1 = {(b1 ^ <*0*>),(b1 ^ <*1*>)}then consider p being
FinSequence such that A4:
( (
p in T1 &
t = <*0*> ^ p ) or (
p in T2 &
t = <*1*> ^ p ) )
;
A5:
now ( p in T2 & t = <*1*> ^ p implies succ t = {(t ^ <*0*>),(t ^ <*1*>)} )assume that A6:
p in T2
and A7:
t = <*1*> ^ p
;
succ t = {(t ^ <*0*>),(t ^ <*1*>)}reconsider p =
p as
Element of
T2 by A6;
per cases
( p in Leaves T2 or not p in Leaves T2 )
;
suppose
not
p in Leaves T2
;
succ t = {(t ^ <*0*>),(t ^ <*1*>)}then A8:
succ p = {(p ^ <*0*>),(p ^ <*1*>)}
by A2;
now for x being object holds
( ( x in succ t implies x in {(t ^ <*0*>),(t ^ <*1*>)} ) & ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t ) )let x be
object ;
( ( x in succ t implies x in {(t ^ <*0*>),(t ^ <*1*>)} ) & ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t ) )hereby ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t )
assume A9:
x in succ t
;
x in {(t ^ <*0*>),(t ^ <*1*>)}then
x in { (t ^ <*n*>) where n is Nat : t ^ <*n*> in tree (T1,T2) }
by TREES_2:def 5;
then consider n being
Nat such that A10:
x = t ^ <*n*>
and A11:
t ^ <*n*> in tree (
T1,
T2)
;
A12:
x = <*1*> ^ (p ^ <*n*>)
by A7, A10, FINSEQ_1:32;
then reconsider pn =
p ^ <*n*> as
Element of
T2 by A10, A11, TREES_3:70;
pn in succ p
by A7, A9, A12, Th7;
then
(
pn = p ^ <*0*> or
pn = p ^ <*1*> )
by A8, TARSKI:def 2;
then
(
x = t ^ <*0*> or
x = t ^ <*1*> )
by A10, FINSEQ_1:33;
hence
x in {(t ^ <*0*>),(t ^ <*1*>)}
by TARSKI:def 2;
verum
end; assume
x in {(t ^ <*0*>),(t ^ <*1*>)}
;
x in succ tthen
(
x = (<*1*> ^ p) ^ <*0*> or
x = (<*1*> ^ p) ^ <*1*> )
by A7, TARSKI:def 2;
then A13:
(
x = <*1*> ^ (p ^ <*0*>) or
x = <*1*> ^ (p ^ <*1*>) )
by FINSEQ_1:32;
(
p ^ <*0*> in succ p &
p ^ <*1*> in succ p )
by A8, TARSKI:def 2;
hence
x in succ t
by A7, A13, Th7;
verum end; hence
succ t = {(t ^ <*0*>),(t ^ <*1*>)}
by TARSKI:2;
verum end; end; end; now ( p in T1 & t = <*0*> ^ p implies succ t = {(t ^ <*0*>),(t ^ <*1*>)} )assume that A14:
p in T1
and A15:
t = <*0*> ^ p
;
succ t = {(t ^ <*0*>),(t ^ <*1*>)}reconsider p =
p as
Element of
T1 by A14;
per cases
( p in Leaves T1 or not p in Leaves T1 )
;
suppose
not
p in Leaves T1
;
succ t = {(t ^ <*0*>),(t ^ <*1*>)}then A16:
succ p = {(p ^ <*0*>),(p ^ <*1*>)}
by A1;
now for x being object holds
( ( x in succ t implies x in {(t ^ <*0*>),(t ^ <*1*>)} ) & ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t ) )let x be
object ;
( ( x in succ t implies x in {(t ^ <*0*>),(t ^ <*1*>)} ) & ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t ) )hereby ( x in {(t ^ <*0*>),(t ^ <*1*>)} implies x in succ t )
assume A17:
x in succ t
;
x in {(t ^ <*0*>),(t ^ <*1*>)}then
x in { (t ^ <*n*>) where n is Nat : t ^ <*n*> in tree (T1,T2) }
by TREES_2:def 5;
then consider n being
Nat such that A18:
x = t ^ <*n*>
and A19:
t ^ <*n*> in tree (
T1,
T2)
;
A20:
x = <*0*> ^ (p ^ <*n*>)
by A15, A18, FINSEQ_1:32;
then reconsider pn =
p ^ <*n*> as
Element of
T1 by A18, A19, TREES_3:69;
pn in succ p
by A15, A17, A20, Th7;
then
(
pn = p ^ <*0*> or
pn = p ^ <*1*> )
by A16, TARSKI:def 2;
then
(
x = t ^ <*0*> or
x = t ^ <*1*> )
by A18, FINSEQ_1:33;
hence
x in {(t ^ <*0*>),(t ^ <*1*>)}
by TARSKI:def 2;
verum
end; assume
x in {(t ^ <*0*>),(t ^ <*1*>)}
;
x in succ tthen
(
x = (<*0*> ^ p) ^ <*0*> or
x = (<*0*> ^ p) ^ <*1*> )
by A15, TARSKI:def 2;
then A21:
(
x = <*0*> ^ (p ^ <*0*>) or
x = <*0*> ^ (p ^ <*1*>) )
by FINSEQ_1:32;
(
p ^ <*0*> in succ p &
p ^ <*1*> in succ p )
by A16, TARSKI:def 2;
hence
x in succ t
by A15, A21, Th7;
verum end; hence
succ t = {(t ^ <*0*>),(t ^ <*1*>)}
by TARSKI:2;
verum end; end; end; hence
succ t = {(t ^ <*0*>),(t ^ <*1*>)}
by A4, A5;
verum end; end; end; hence
tree (
T1,
T2) is
binary
;
verum
end;
assume A22:
tree (T1,T2) is binary
; ( T1 is binary & T2 is binary )
hence
T1 is binary
; T2 is binary
hence
T2 is binary
; verum