let IT1, IT2 be LexBFS:LabelingSeq of G; :: thesis: ( IT1 . 0 = LexBFS:Init G & ( for n being Nat holds IT1 . (n + 1) = LexBFS:Step (IT1 . n) ) & IT2 . 0 = LexBFS:Init G & ( for n being Nat holds IT2 . (n + 1) = LexBFS:Step (IT2 . n) ) implies IT1 = IT2 )

assume that

A6: IT1 . 0 = LexBFS:Init G and

A7: for n being Nat holds IT1 . (n + 1) = LexBFS:Step (IT1 . n) and

A8: IT2 . 0 = LexBFS:Init G and

A9: for n being Nat holds IT2 . (n + 1) = LexBFS:Step (IT2 . n) ; :: thesis: IT1 = IT2

defpred S_{1}[ Nat] means IT1 . $1 = IT2 . $1;

_{1}[n] holds

S_{1}[n + 1]
;

A11: S_{1}[ 0 ]
by A6, A8;

for n being Nat holds S_{1}[n]
from NAT_1:sch 2(A11, A10);

then for n being object st n in NAT holds

IT1 . n = IT2 . n ;

hence IT1 = IT2 by PBOOLE:3; :: thesis: verum

assume that

A6: IT1 . 0 = LexBFS:Init G and

A7: for n being Nat holds IT1 . (n + 1) = LexBFS:Step (IT1 . n) and

A8: IT2 . 0 = LexBFS:Init G and

A9: for n being Nat holds IT2 . (n + 1) = LexBFS:Step (IT2 . n) ; :: thesis: IT1 = IT2

defpred S

now :: thesis: for n being Nat st S_{1}[n] holds

S_{1}[n + 1]

then A10:
for n being Nat st SS

let n be Nat; :: thesis: ( S_{1}[n] implies S_{1}[n + 1] )

assume S_{1}[n]
; :: thesis: S_{1}[n + 1]

then IT1 . (n + 1) = LexBFS:Step (IT2 . n) by A7

.= IT2 . (n + 1) by A9 ;

hence S_{1}[n + 1]
; :: thesis: verum

end;assume S

then IT1 . (n + 1) = LexBFS:Step (IT2 . n) by A7

.= IT2 . (n + 1) by A9 ;

hence S

S

A11: S

for n being Nat holds S

then for n being object st n in NAT holds

IT1 . n = IT2 . n ;

hence IT1 = IT2 by PBOOLE:3; :: thesis: verum