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