reserve x for object;
reserve x0,r,r1,r2,g,g1,g2,p,y0 for Real;
reserve n,m,k,l for Element of NAT;
reserve a,b,d for Real_Sequence;
reserve h,h1,h2 for non-zero 0-convergent Real_Sequence;
reserve c,c1 for constant Real_Sequence;
reserve A for open Subset of REAL;
reserve f,f1,f2 for PartFunc of REAL,REAL;
reserve L for LinearFunc;
reserve R for RestFunc;

theorem
  f is_differentiable_on A implies
  r(#)f is_differentiable_on A & (r(#)f)`|A = r(#)(f`|A)
proof
  assume
A1: f is_differentiable_on A;
  then A c= dom f;
  then
A2: A c= dom (r(#)f) by VALUED_1:def 5;
  then r(#)f is_differentiable_on A by A1,FDIFF_1:20;
  then
A3: dom ((r(#)f)`|A) = A by FDIFF_1:def 7;
  dom (f`|A) = A by A1,FDIFF_1:def 7;
  then
A4: dom (r(#)(f`|A)) = A by VALUED_1:def 5;
  now
    let x0 be Element of REAL;
    assume
A5: x0 in A;
    hence ((r(#)f)`|A).x0 = r * diff(f,x0) by A1,A2,FDIFF_1:20
      .= r * ((f`|A).x0) by A1,A5,FDIFF_1:def 7
      .= (r(#)(f`|A)).x0 by A4,A5,VALUED_1:def 5;
  end;
  hence thesis by A1,A2,A3,A4,FDIFF_1:20,PARTFUN1:5;
end;
