let seq1, seq2 be Function; :: thesis: ( dom seq1 = NAT & seq1 . 0 = f | Z & ( for i being Nat holds seq1 . (i + 1) = (modetrans ((seq1 . i),S,(diff_SP (i,S,T)))) `| Z ) & dom seq2 = NAT & seq2 . 0 = f | Z & ( for i being Nat holds seq2 . (i + 1) = (modetrans ((seq2 . i),S,(diff_SP (i,S,T)))) `| Z ) implies seq1 = seq2 )
assume that
A2: ( dom seq1 = NAT & seq1 . 0 = f | Z & ( for n being Nat holds seq1 . (n + 1) = (modetrans ((seq1 . n),S,(diff_SP (n,S,T)))) `| Z ) ) and
A3: ( dom seq2 = NAT & seq2 . 0 = f | Z & ( for n being Nat holds seq2 . (n + 1) = (modetrans ((seq2 . n),S,(diff_SP (n,S,T)))) `| Z ) ) ; :: thesis: seq1 = seq2
defpred S1[ Nat] means seq1 . $1 = seq2 . $1;
A4: for k being Nat st S1[k] holds
S1[k + 1]
proof
let k be Nat; :: thesis: ( S1[k] implies S1[k + 1] )
assume S1[k] ; :: thesis: S1[k + 1]
then (modetrans ((seq1 . k),S,(diff_SP (k,S,T)))) `| Z = seq2 . (k + 1) by A3;
hence seq1 . (k + 1) = seq2 . (k + 1) by A2; :: thesis: verum
end;
A5: S1[ 0 ] by A2, A3;
for n being Nat holds S1[n] from NAT_1:sch 2(A5, A4);
then for n being object st n in dom seq1 holds
seq1 . n = seq2 . n by A2;
hence seq1 = seq2 by FUNCT_1:2, A2, A3; :: thesis: verum