reserve m,n for non zero Element of NAT;
reserve i,j,k for Element of NAT;
reserve Z for set;

theorem
for X be Subset of REAL m, f be PartFunc of REAL m,REAL, r be Real st
  X c= dom f & f is_differentiable_on X
holds
  r(#)f is_differentiable_on X
& for x be Element of REAL m st x in X
    holds ((r(#)f)`|X)/.x = r(#)((f`|X)/.x)
proof
   let X be Subset of REAL m;
   let f be PartFunc of REAL m,REAL, r be Real;
   assume A1: X c= dom f;
   assume A2: f is_differentiable_on X; then
A3:X is open by A1,Th55;
A4:X c= dom (r(#)f) by A1,VALUED_1:def 5;
A5:now let x be Element of REAL m;
    assume x in X; then
    f is_differentiable_in x by A2,A3,A1,Th54;
    hence r(#)f is_differentiable_in x
     & diff(r(#)f,x) = r(#)diff(f,x) by Th52;
   end; then
   for x be Element of REAL m st x in X holds r(#)f is_differentiable_in x;
   hence r(#)f is_differentiable_on X by A4,A3,Th54;
   let x be Element of REAL m;
   assume A6:x in X; then
   ((r(#)f)`|X)/.x = diff(r(#)f,x) by A4,Def4;
   hence ((r(#)f)`|X)/.x = r(#)diff(f,x) by A6,A5
   .= r(#)((f`|X)/.x) by A1,A6,Def4;
end;
