reserve a,b,c for positive Real,
  m,x,y,z for Real,
  n for Nat,
  s,s1,s2,s3,s4,s5 for Real_Sequence;

theorem
  (for n holds s1.n>=0 & s2.n>=0) implies for n holds (Partial_Product
  s1).n+(Partial_Product s2).n<= (Partial_Product(s1+s2)).n
proof
  set s=s1+s2;
  defpred X[Nat] means (Partial_Product s1).$1+ (Partial_Product s2
  ).$1<=(Partial_Product s).$1;
A1: (Partial_Product s).0 = s.0 by Def1
    .=s1.0+s2.0 by SEQ_1:7;
  assume
A2: for n holds s1.n>=0 & s2.n>=0;
A3: for n st X[n] holds X[n+1]
  proof
    let n;
    set u=(Partial_Product s1).n;
    set v=(Partial_Product s2).n;
    set w=(Partial_Product s).n;
    set h=s1.(n+1);
    set j=s2.(n+1);
A4: h>=0 & j>=0 by A2;
    u>=0 & v>=0 by A2,Th44;
    then
A5: u*h+v*j<=(u*h+v*j)+(u*j+v*h) by A4,XREAL_1:31;
A6: (Partial_Product s).(n+1) =(Partial_Product s).n*s.(n+1) by Def1
      .=w*(h+j) by SEQ_1:7;
    assume
    (Partial_Product s1).n+(Partial_Product s2).n<= (Partial_Product s ).n;
    then
A7: (u+v)*(h+j)<=w*(h+j) by A4,XREAL_1:64;
    (Partial_Product s1).(n+1)+(Partial_Product s2).(n+1) =(
    Partial_Product s1).n*s1.(n+1)+(Partial_Product s2).(n+1) by Def1
      .=u*h+v*j by Def1;
    hence thesis by A7,A6,A5,XXREAL_0:2;
  end;
  (Partial_Product s1).0+(Partial_Product s2).0 =s1.0+(Partial_Product s2)
  .0 by Def1
    .=s1.0+s2.0 by Def1;
  then
A8: X[0] by A1;
  for n holds X[n] from NAT_1:sch 2(A8,A3);
  hence thesis;
end;
