set X = TrivialInfiniteTree ;
0 |-> 0 in TrivialInfiniteTree
;
hence
not TrivialInfiniteTree is empty
; :: thesis: TrivialInfiniteTree is Tree-like
thus
TrivialInfiniteTree c= NAT *
:: according to TREES_1:def 5 :: thesis: ( ( for b1 being FinSequence of NAT holds
( not b1 in TrivialInfiniteTree or ProperPrefixes b1 c= TrivialInfiniteTree ) ) & ( for b1 being FinSequence of NAT
for b2, b3 being Element of NAT holds
( not b1 ^ <*b2*> in TrivialInfiniteTree or not b3 <= b2 or b1 ^ <*b3*> in TrivialInfiniteTree ) ) )
thus
for p being FinSequence of NAT st p in TrivialInfiniteTree holds
ProperPrefixes p c= TrivialInfiniteTree
:: thesis: for b1 being FinSequence of NAT
for b2, b3 being Element of NAT holds
( not b1 ^ <*b2*> in TrivialInfiniteTree or not b3 <= b2 or b1 ^ <*b3*> in TrivialInfiniteTree )
let p be FinSequence of NAT ; :: thesis: for b1, b2 being Element of NAT holds
( not p ^ <*b1*> in TrivialInfiniteTree or not b2 <= b1 or p ^ <*b2*> in TrivialInfiniteTree )
let m, n be Element of NAT ; :: thesis: ( not p ^ <*m*> in TrivialInfiniteTree or not n <= m or p ^ <*n*> in TrivialInfiniteTree )
assume
p ^ <*m*> in TrivialInfiniteTree
; :: thesis: ( not n <= m or p ^ <*n*> in TrivialInfiniteTree )
then consider k being Element of NAT such that
A8:
p ^ <*m*> = k |-> 0
;
assume A9:
n <= m
; :: thesis: p ^ <*n*> in TrivialInfiniteTree
A10:
len (p ^ <*m*>) = (len p) + 1
by FINSEQ_2:19;
A11:
len (p ^ <*m*>) = k
by A8, FINSEQ_1:def 18;
A12:
(p ^ <*m*>) . (len (p ^ <*m*>)) = m
by A10, FINSEQ_1:59;
( 0 = k or 0 < k )
;
then
0 + 1 <= k
by A8, NAT_1:13;
then
k in Seg k
by FINSEQ_1:3;
then A13:
m = 0
by A8, A11, A12, FUNCOP_1:13;
A14:
len (p ^ <*n*>) = len ((len (p ^ <*n*>)) |-> 0 )
by FINSEQ_1:def 18;
for z being Nat st 1 <= z & z <= len (p ^ <*n*>) holds
((len (p ^ <*n*>)) |-> 0 ) . z = (p ^ <*n*>) . z
proof
let z be
Nat;
:: thesis: ( 1 <= z & z <= len (p ^ <*n*>) implies ((len (p ^ <*n*>)) |-> 0 ) . z = (p ^ <*n*>) . z )
assume that A15:
1
<= z
and A16:
z <= len (p ^ <*n*>)
;
:: thesis: ((len (p ^ <*n*>)) |-> 0 ) . z = (p ^ <*n*>) . z
z in dom (p ^ <*n*>)
by A15, A16, FINSEQ_3:27;
then A17:
z in Seg (len (p ^ <*n*>))
by FINSEQ_1:def 3;
len (p ^ <*n*>) = (len p) + 1
by FINSEQ_2:19;
then A18:
z in Seg k
by A10, A11, A15, A16, FINSEQ_1:3;
thus ((len (p ^ <*n*>)) |-> 0 ) . z =
0
by A17, FUNCOP_1:13
.=
(p ^ <*m*>) . z
by A8, A18, FUNCOP_1:13
.=
(p ^ <*n*>) . z
by A9, A13
;
:: thesis: verum
end;
then
(len (p ^ <*n*>)) |-> 0 = p ^ <*n*>
by A14, FINSEQ_1:18;
hence
p ^ <*n*> in TrivialInfiniteTree
; :: thesis: verum