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

theorem Th26:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL n st
 X is open & X c= dom f holds
   (for i be Nat st 1 <= i & i <= m holds
     f is_partial_differentiable_on X,i & f`partial|(X,i) is_continuous_on X)
  iff
   (f is_differentiable_on X &
    for x0 be Element of REAL m,r be Real st x0 in X & 0 < r
     ex s be Real st
      0 < s
      & for x1 be Element of REAL m st x1 in X & |. x1-x0 .| < s
         holds for v be Element of REAL m
          holds |. diff(f,x1).v  - diff(f,x0).v.| <= r * |.v.|)
proof
   let X be Subset of REAL m, f be PartFunc of REAL m,REAL n;
   assume A1: X is open & X c= dom f;

   reconsider Y = X as Subset of REAL-NS m by REAL_NS1:def 4;

   the carrier of REAL-NS m = REAL m
 & the carrier of REAL-NS n = REAL n by REAL_NS1:def 4; then
   reconsider g = f as PartFunc of REAL-NS m,REAL-NS n;

   hereby assume
     for i be Nat st 1 <=i & i <= m holds
       f is_partial_differentiable_on X,i &
       f`partial|(X,i) is_continuous_on X; then
    g is_differentiable_on Y & g`|Y is_continuous_on Y by A1,Th24;
    hence
    f is_differentiable_on X &
      for x0 be Element of REAL m,r be Real
        st x0 in X & 0 < r
          ex s be Real
            st 0 < s & for x1 be Element of REAL m
             st x1 in X & |. x1- x0 .| < s
               holds for v be Element of REAL m
                 holds |. diff(f,x1).v  - diff(f,x0).v.| <= r * |.v.|
                   by A1,Th25;
   end;

   assume
    (f is_differentiable_on X &
       for x0 be Element of REAL m,r be Real
         st x0 in X & 0 < r
           ex s be Real
             st 0 < s & for x1 be Element of REAL m
              st x1 in X & |. x1- x0 .| < s
                holds for v be Element of REAL m
                  holds |. diff(f,x1).v  - diff(f,x0).v.| <= r * |.v.|); then
   g is_differentiable_on Y & g`|Y is_continuous_on Y by A1,Th25;
   hence thesis by A1,Th24;
end;
