reserve F for RealNormSpace;
reserve G for RealNormSpace;
reserve X for set;
reserve x,x0,g,r,s,p for Real;
reserve n,m,k for Element of NAT;
reserve Y for Subset of REAL;
reserve Z for open Subset of REAL;
reserve s1,s3 for Real_Sequence;
reserve seq for sequence of G;
reserve f,f1,f2 for PartFunc of REAL,the carrier of F;
reserve h for 0-convergent non-zero Real_Sequence;
reserve c for constant Real_Sequence;
reserve R,R1,R2 for RestFunc of F;
reserve L,L1,L2 for LinearFunc of F;

theorem
  Z c= dom (f1+f2) & f1 is_differentiable_on Z &
  f2 is_differentiable_on Z implies
  f1+f2 is_differentiable_on Z &
  for x st x in Z holds
  ((f1+f2)`|Z).x = diff(f1,x) + diff(f2,x)
  proof
    assume that
    A1: Z c= dom (f1+f2) and
    A2: f1 is_differentiable_on Z & f2 is_differentiable_on Z;
    now
      let x0;
      assume x0 in Z;
      then f1 is_differentiable_in x0 & f2 is_differentiable_in x0 by A2,Th10;
      hence f1+f2 is_differentiable_in x0 by Th14;
    end;
    hence
    A3: f1+f2 is_differentiable_on Z by A1,Th10;
      let x;
      assume
      A4: x in Z; then
      A5: f1 is_differentiable_in x & f2 is_differentiable_in x by A2,Th10;
      thus ((f1+f2)`|Z).x = diff((f1+f2),x) by A3,A4,Def6
      .= diff(f1,x) + diff(f2,x) by A5,Th14;
  end;
