let m, n be non empty Element of NAT ; :: thesis: for X being Subset of (REAL m)
for f being PartFunc of (REAL m),(REAL n)
for r being Real st f is_differentiable_on X holds
( r (#) f is_differentiable_on X & ( for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x)) ) )

let X be Subset of (REAL m); :: thesis: for f being PartFunc of (REAL m),(REAL n)
for r being Real st f is_differentiable_on X holds
( r (#) f is_differentiable_on X & ( for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x)) ) )

let f be PartFunc of (REAL m),(REAL n); :: thesis: for r being Real st f is_differentiable_on X holds
( r (#) f is_differentiable_on X & ( for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x)) ) )

let r be Real; :: thesis: ( f is_differentiable_on X implies ( r (#) f is_differentiable_on X & ( for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x)) ) ) )

assume AS1: f is_differentiable_on X ; :: thesis: ( r (#) f is_differentiable_on X & ( for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x)) ) )

then AS11: X is open by MPDIFF633;
then X c= dom f by AS1, MPDIFF632;
then P3: X c= dom (r (#) f) by VALUED_2:def 39;
now :: thesis: for x being Element of REAL m st x in X holds
r (#) f is_differentiable_in x
end;
hence r (#) f is_differentiable_on X by P3, AS11, MPDIFF632; :: thesis: for x being Element of REAL m st x in X holds
((r (#) f) `| X) /. x = r (#) (diff (f,x))

let x be Element of REAL m; :: thesis: ( x in X implies ((r (#) f) `| X) /. x = r (#) (diff (f,x)) )
assume P7: x in X ; :: thesis: ((r (#) f) `| X) /. x = r (#) (diff (f,x))
then f is_differentiable_in x by AS1, AS11, MPDIFF632;
then diff ((r (#) f),x) = r (#) (diff (f,x)) by PDIFF_6:22;
hence ((r (#) f) `| X) /. x = r (#) (diff (f,x)) by P3, P7, Def1; :: thesis: verum