let f be Function; :: thesis: ( ( for i being Element of NAT holds f . (i + 1) c= f . i ) implies for i, j being Element of NAT st i <= j holds
f . j c= f . i )

assume A1: for i being Element of NAT holds f . (i + 1) c= f . i ; :: thesis: for i, j being Element of NAT st i <= j holds
f . j c= f . i

let i, j be Element of NAT ; :: thesis: ( i <= j implies f . j c= f . i )
assume A2: i <= j ; :: thesis: f . j c= f . i
defpred S1[ Element of NAT ] means ( i + $1 <= j implies f . (i + $1) c= f . i );
A3: S1[ 0 ] ;
A4: now
let k be Element of NAT ; :: thesis: ( S1[k] implies S1[k + 1] )
A5: (i + k) + 1 = i + (k + 1) ;
assume A6: S1[k] ; :: thesis: S1[k + 1]
f . (i + (k + 1)) c= f . (i + k) by A1, A5;
hence S1[k + 1] by A5, A6, NAT_1:13, XBOOLE_1:1; :: thesis: verum
end;
A7: for k being Element of NAT holds S1[k] from NAT_1:sch 1(A3, A4);
consider k being Nat such that
A8: i + k = j by A2, NAT_1:10;
k in NAT by ORDINAL1:def 13;
hence f . j c= f . i by A7, A8; :: thesis: verum