reserve D for non empty set,
  i,j,k for Nat,
  n,m for Nat,
  r for Real,
  e for real-valued FinSequence;

theorem Th4:
  len e >= 1 & (for i be Nat st i in dom e holds 0 <= e.i) implies
  for f being Real_Sequence st f.1 = e.1 & (for n be Nat st 0 <> n & n < len e
holds f.(n+1) = f.n+e.(n+1)) holds for n be Nat st n in dom e holds e.n <= f.n
proof
  assume that
A1: len e >= 1 and
A2: for i be Nat st i in dom e holds 0 <= e.i;
  let f being Real_Sequence such that
A3: f.1 = e.1 and
A4: for n be Nat st 0 <> n & n < len e holds f.(n+1) = f.n+e.(n+1);
  defpred p[Nat] means $1 in dom e implies e.$1 <= f.$1;
A5: now
    let k be Nat such that
    p[k];
    now
      assume k + 1 in dom e;
      then
A6:   k + 1 <= len e by FINSEQ_3:25;
      per cases by A6,NAT_1:13;
      suppose
        k = 0 & k < len e;
        hence e.(k+1) <= f.(k+1) by A3;
      end;
      suppose
A7:     k > 0 & k < len e;
        then 1 <= len e by NAT_1:14;
        then
A8:     1 in dom e by FINSEQ_3:25;
A9:     1 in dom e by A1,FINSEQ_3:25;
A10:    k >=1 by A7,NAT_1:14;
        then k in dom e by A7,FINSEQ_3:25;
        then e.1 <= f.k by A2,A3,A4,A10,A8,Th3;
        then f.k >= 0 by A2,A9;
        then f.k + e.(k+1) >= e.(k+1) by XREAL_1:31;
        hence e.(k+1) <= f.(k+1) by A4,A7;
      end;
    end;
    hence p[k+1];
  end;
A11: p[0] by FINSEQ_3:25;
  for n holds p[n] from NAT_1:sch 2(A11,A5);
  hence thesis;
end;
