reserve rseq, rseq1, rseq2 for Real_Sequence;
reserve seq, seq1, seq2 for Complex_Sequence;
reserve k, n, n1, n2, m for Nat;
reserve p, r for Real;

theorem
  (for n st n <= m holds rseq1.n <= p * rseq2.n) implies for n holds for
  l be Nat st n+l <= m holds Partial_Sums(rseq1).(n+l)-Partial_Sums(
  rseq1).n <= p * (Partial_Sums(rseq2).(n+l)-Partial_Sums(rseq2).n)
proof
  assume
A1: for n st n <= m holds rseq1.n <= p * rseq2.n;
  let n;
  defpred P[Nat] means
n+$1 <= m implies Partial_Sums(rseq1).(n+$1)
-Partial_Sums(rseq1).n <= p * (Partial_Sums(rseq2).(n+$1)-Partial_Sums(rseq2).n
  );
A2: for l be Nat st P[l] holds P[l+1]
  proof
    let l be Nat such that
A3: P[l];
    assume
A4: n + (l+1) <= m;
    then
    Partial_Sums(rseq1).(n+(l+1)) =Partial_Sums(rseq1).(n+l)+rseq1.(n+l+1)
    & rseq1.(n+l+1) <= p * rseq2.(n+l+1) by A1,SERIES_1:def 1;
    then Partial_Sums(rseq1).(n+(l+1)) <= Partial_Sums(rseq1).(n+l) + p *
    rseq2.(n+l+1) by XREAL_1:6;
    then
A5: Partial_Sums(rseq1).(n+(l+1))-Partial_Sums(rseq1).n <= Partial_Sums(
    rseq1).(n+l) + p * rseq2.(n+l+1) -Partial_Sums(rseq1).n by XREAL_1:9;
    n+l < (n+l)+1 by XREAL_1:29;
    then
A6: Partial_Sums(rseq1).(n+l) -Partial_Sums(rseq1).n + p * rseq2.(n+l+1)
<= p * (Partial_Sums(rseq2).(n+l)-Partial_Sums(rseq2).n) + p * rseq2.(n+l+1)
by A3,A4,XREAL_1:6,XXREAL_0:2;
    p * (Partial_Sums(rseq2).(n+l)-Partial_Sums(rseq2).n) + p * rseq2.(n+
    l+1) = p * (Partial_Sums(rseq2).(n+l)+rseq2.(n+l+1) -Partial_Sums(rseq2).n)
      .=p * (Partial_Sums(rseq2).(n+(l+1)) -Partial_Sums(rseq2).n) by
SERIES_1:def 1;
    hence thesis by A5,A6,XXREAL_0:2;
  end;
A7: P[0];
  thus for l be Nat holds P[l] from NAT_1:sch 2(A7,A2);
end;
