let T1, T2 be DecoratedTree; ( ex q being DTree-yielding FinSequence st
( p = q & dom T1 = tree (doms q) ) & T1 . {} = x & ( for n being Element of NAT st n < len p holds
T1 | <*n*> = p . (n + 1) ) & ex q being DTree-yielding FinSequence st
( p = q & dom T2 = tree (doms q) ) & T2 . {} = x & ( for n being Element of NAT st n < len p holds
T2 | <*n*> = p . (n + 1) ) implies T1 = T2 )
given q1 being DTree-yielding FinSequence such that A15:
p = q1
and
A16:
dom T1 = tree (doms q1)
; ( not T1 . {} = x or ex n being Element of NAT st
( n < len p & not T1 | <*n*> = p . (n + 1) ) or for q being DTree-yielding FinSequence holds
( not p = q or not dom T2 = tree (doms q) ) or not T2 . {} = x or ex n being Element of NAT st
( n < len p & not T2 | <*n*> = p . (n + 1) ) or T1 = T2 )
assume that
A17:
T1 . {} = x
and
A18:
for n being Element of NAT st n < len p holds
T1 | <*n*> = p . (n + 1)
; ( for q being DTree-yielding FinSequence holds
( not p = q or not dom T2 = tree (doms q) ) or not T2 . {} = x or ex n being Element of NAT st
( n < len p & not T2 | <*n*> = p . (n + 1) ) or T1 = T2 )
given q2 being DTree-yielding FinSequence such that A19:
( p = q2 & dom T2 = tree (doms q2) )
; ( not T2 . {} = x or ex n being Element of NAT st
( n < len p & not T2 | <*n*> = p . (n + 1) ) or T1 = T2 )
assume that
A20:
T2 . {} = x
and
A21:
for n being Element of NAT st n < len p holds
T2 | <*n*> = p . (n + 1)
; T1 = T2
now for q being FinSequence of NAT st q in dom T1 holds
T1 . q = T2 . qlet q be
FinSequence of
NAT ;
( q in dom T1 implies T1 . q = T2 . q )assume A22:
q in dom T1
;
T1 . q = T2 . qnow ( q <> {} implies T1 . q = T2 . q )assume
q <> {}
;
T1 . q = T2 . qthen consider s being
FinSequence of
NAT ,
n being
Element of
NAT such that A23:
q = <*n*> ^ s
by FINSEQ_2:130;
A24:
<*n*> in dom T1
by A22, A23, TREES_1:21;
A25:
n < len (doms q1)
by A16, A22, A23, TREES_3:48;
len (doms q1) = len p
by A15, TREES_3:38;
then A26:
(
T1 | <*n*> = p . (n + 1) &
T2 | <*n*> = p . (n + 1) )
by A18, A21, A25;
A27:
s in (dom T1) | <*n*>
by A22, A23, A24, TREES_1:def 6;
then
T1 . q = (T1 | <*n*>) . s
by A23, TREES_2:def 10;
hence
T1 . q = T2 . q
by A15, A16, A19, A23, A26, A27, TREES_2:def 10;
verum end; hence
T1 . q = T2 . q
by A17, A20;
verum end;
hence
T1 = T2
by A15, A16, A19, TREES_2:31; verum