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,g be PartFunc of REAL m,REAL st
  X c= dom f & X c= dom g &
  f is_differentiable_on X & g is_differentiable_on X
holds
  f-g is_differentiable_on X
& for x be Element of REAL m st x in X
    holds ((f-g)`|X)/.x = (f`|X)/.x - (g`|X)/.x
proof
   let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL;
   assume A1: X c= dom f & X c= dom g;
   assume A2: f is_differentiable_on X & g is_differentiable_on X; then
A3:X is open by A1,Th55;
   dom (f-g) = dom f /\ dom g by VALUED_1:12; then
A4:X c= dom (f-g) by A1,XBOOLE_1:19;
A5:now let x be Element of REAL m;
    assume x in X; then
    f is_differentiable_in x & g is_differentiable_in x by A1,A2,A3,Th54;
    hence f-g is_differentiable_in x & diff(f-g,x) = diff(f,x)- diff(g,x)
     by Th51;
   end; then
   for x be Element of REAL m st x in X holds f-g is_differentiable_in x;
   hence f-g is_differentiable_on X by A4,A3,Th54;
   let x be Element of REAL m;
   assume A6:x in X; then
   ((f-g)`|X)/.x = diff(f-g,x) by A4,Def4; then
   ((f-g)`|X)/.x = diff(f,x)- diff(g,x) by A6,A5; then
   ((f-g)`|X)/.x = (f`|X)/.x - diff(g,x) by A1,A6,Def4;
   hence ((f-g)`|X)/.x = (f`|X)/.x - (g`|X)/.x by A1,A6,Def4;
end;
