let IT1, IT2 be PRIM:LabelingSeq of G; :: thesis: ( IT1 . 0 = PRIM:Init G & ( for n being Nat holds IT1 . (n + 1) = PRIM:Step (IT1 . n) ) & IT2 . 0 = PRIM:Init G & ( for n being Nat holds IT2 . (n + 1) = PRIM:Step (IT2 . n) ) implies IT1 = IT2 )
assume that
A5: IT1 . 0 = PRIM:Init G and
A6: for n being Nat holds IT1 . (n + 1) = PRIM:Step (IT1 . n) and
A7: IT2 . 0 = PRIM:Init G and
A8: for n being Nat holds IT2 . (n + 1) = PRIM: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) = PRIM:Step (IT2 . n) by A6
.= IT2 . (n + 1) by A8 ;
hence S1[n + 1] ; :: thesis: verum
end;
then A9: for n being Nat st S1[n] holds
S1[n + 1] ;
A10: S1[ 0 ] by A5, A7;
for n being Nat holds S1[n] from NAT_1:sch 2(A10, A9);
then for n being object st n in NAT holds
IT1 . n = IT2 . n ;
hence IT1 = IT2 by PBOOLE:3; :: thesis: verum