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 S1[ Nat] means IT1 . $1 = IT2 . $1;
now :: thesis: for n being Nat st S1[n] holds
S1[n + 1]
let n be Nat; :: thesis: ( S1[n] implies S1[n + 1] )
assume S1[n] ; :: thesis: S1[n + 1]
then IT1 . (n + 1) = LexBFS:Step (IT2 . n) by A7
.= IT2 . (n + 1) by A9 ;
hence S1[n + 1] ; :: thesis: verum
end;
then A10: for n being Nat st S1[n] holds
S1[n + 1] ;
A11: S1[ 0 ] by A6, A8;
for n being Nat holds S1[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