:: Higher Order Partial Differentiation
:: by Noboru Endou , Hiroyuki Okazaki and Yasunari Shidama
::
:: Received November 20, 2011
:: Copyright (c) 2011-2018 Association of Mizar Users
:: (Stowarzyszenie Uzytkownikow Mizara, Bialystok, Poland).
:: This code can be distributed under the GNU General Public Licence
:: version 3.0 or later, or the Creative Commons Attribution-ShareAlike
:: License version 3.0 or later, subject to the binding interpretation
:: detailed in file COPYING.interpretation.
:: See COPYING.GPL and COPYING.CC-BY-SA for the full text of these
:: licenses, or see http://www.gnu.org/licenses/gpl.html and
:: http://creativecommons.org/licenses/by-sa/3.0/.
environ
vocabularies PRE_TOPC, RLVECT_1, FUNCT_1, ARYTM_3, ARYTM_1, FINSEQ_1,
FINSEQ_2, FCONT_1, XXREAL_2, RVSUM_1, RELAT_1, COMPLEX1, SQUARE_1,
ORDINAL2, RCOMP_1, XBOOLE_0, PARTFUN1, NORMSP_1, XXREAL_1, ORDINAL4,
LOPBAN_1, FDIFF_1, PDIFF_1, REAL_NS1, FUNCT_2, EUCLID, AFINSQ_1, NUMBERS,
STRUCT_0, CFCONT_1, RFINSEQ, REAL_1, SUBSET_1, CARD_1, TARSKI, XXREAL_0,
CARD_3, NAT_1, VALUED_1, SEQ_4, SEQ_2, SEQFUNC, PDIFF_9, FUNCT_7,
XCMPLX_0;
notations TARSKI, XBOOLE_0, SUBSET_1, RELAT_1, FUNCT_1, ORDINAL1, RELSET_1,
PARTFUN1, FUNCT_2, NUMBERS, XCMPLX_0, XXREAL_0, XREAL_0, REAL_1,
SQUARE_1, NAT_1, COMPLEX1, NAT_D, XXREAL_2, FINSEQ_1, VALUED_1, FINSEQ_2,
SEQ_2, RVSUM_1, VALUED_2, RFINSEQ, SEQ_4, RCOMP_1, FDIFF_1, SEQFUNC,
FINSEQ_7, STRUCT_0, PRE_TOPC, RLVECT_1, NORMSP_0, NORMSP_1, VFUNCT_1,
EUCLID, LOPBAN_1, NFCONT_1, NDIFF_1, REAL_NS1, PDIFF_1, INTEGR15,
PDIFF_6, PDIFF_7, NFCONT_4;
constructors REAL_1, SQUARE_1, RSSPACE3, NORMSP_2, FINSEQ_7, NFCONT_1,
FDIFF_1, NDIFF_1, PDIFF_1, BINOP_2, MONOID_0, INTEGR15, RELSET_1,
RFINSEQ, NAT_D, PDIFF_6, SEQ_4, MEASURE6, VFUNCT_1, PDIFF_7, VALUED_2,
NFCONT_4, SEQFUNC, COMSEQ_2, NUMBERS;
registrations XBOOLE_0, FUNCT_1, ORDINAL1, RELSET_1, FUNCT_2, NUMBERS,
XCMPLX_0, XXREAL_0, XREAL_0, NAT_1, MEMBERED, VALUED_0, FINSEQ_1,
STRUCT_0, EUCLID, LOPBAN_1, REAL_NS1, NORMSP_1, SEQ_2, VALUED_2,
VALUED_1, PARTFUN1, SQUARE_1, CARD_1;
requirements SUBSET, REAL, BOOLE, NUMERALS, ARITHM;
definitions TARSKI;
equalities FINSEQ_1, NORMSP_0, EUCLID, LOPBAN_1, PDIFF_1, FINSEQ_2, PDIFF_7,
INTEGR15;
expansions TARSKI, PDIFF_1, PDIFF_7, FUNCT_2;
theorems TARSKI, ABSVALUE, XBOOLE_0, XBOOLE_1, EUCLID, XREAL_1, COMPLEX1,
FINSEQ_1, FINSEQ_2, FINSEQ_3, RFINSEQ, NAT_1, XXREAL_0, FINSEQ_7,
RVSUM_1, RELAT_1, FUNCT_1, FUNCT_2, SQUARE_1, FINSEQ_5, NORMSP_1,
LOPBAN_1, PARTFUN1, PARTFUN2, NFCONT_1, FDIFF_1, NDIFF_1, REAL_NS1,
VALUED_1, PDIFF_1, TOPREAL7, XXREAL_2, PDIFF_6, SEQ_4, PDIFF_7, PDIFF_8,
NFCONT_4, SEQ_2, VALUED_2, RFUNCT_2, RCOMP_1, INT_1, XREAL_0, INTEGR15,
ORDINAL1, RFUNCT_1;
schemes SEQ_1, NAT_1, RECDEF_1;
begin :: Preliminaries
reserve m,n for non zero Element of NAT;
reserve i,j,k for Element of NAT;
reserve Z for set;
theorem Th1:
for S,T be RealNormSpace,
f be Point of R_NormSpace_of_BoundedLinearOperators(S,T),
r be Real st
0 <= r &
for x be Point of S st ||.x.|| <= 1 holds ||. f.x .|| <= r * ||.x.||
holds ||.f.|| <= r
proof
let S,T be RealNormSpace,
f be Point of R_NormSpace_of_BoundedLinearOperators(S,T),
r be Real;
assume
A1: 0 <= r &
for x be Point of S st ||.x.|| <= 1 holds ||. f.x .|| <= r * ||.x.||;
A2:now let x be Point of S;
assume ||.x.|| <= 1; then
||. f.x .|| <= r * ||.x.|| & r * ||.x.|| <= r * 1 by A1,XREAL_1:64;
hence ||. f.x .|| <= r by XXREAL_0:2;
end;
reconsider g = f as Lipschitzian LinearOperator of S,T by LOPBAN_1:def 9;
set PreNormS = PreNorms(modetrans(f,S,T));
A3:for y be ExtReal st y in PreNorms(modetrans(f,S,T)) holds y <= r
proof
let y be ExtReal;
assume y in PreNormS; then
consider x be VECTOR of S such that
A4: y = ||. modetrans(f,S,T).x .|| & ||.x.|| <= 1;
y = ||. g.x .|| by A4,LOPBAN_1:29;
hence thesis by A2,A4;
end;
set UBPreNormS = upper_bound PreNormS;
set dif = UBPreNormS - r;
now assume UBPreNormS > r; then
A5: dif > 0 by XREAL_1:50;
r is UpperBound of PreNormS by A3,XXREAL_2:def 1; then
PreNormS is bounded_above by XXREAL_2:def 10; then
ex w being Real st
w in PreNormS & UBPreNormS - dif < w by A5,SEQ_4:def 1;
hence contradiction by A3;
end; then
upper_bound PreNorms(g) <= r by LOPBAN_1:def 11;
hence thesis by LOPBAN_1:30;
end;
theorem Th2:
for S be RealNormSpace, f be PartFunc of S,REAL
holds
f is_continuous_on Z
iff
Z c= dom f
& for s1 be sequence of S
st rng s1 c= Z & s1 is convergent & lim s1 in Z
holds f/*s1 is convergent & f/.(lim s1) = lim (f/*s1)
proof
let S be RealNormSpace, f be PartFunc of S,REAL;
thus f is_continuous_on Z implies Z c= dom f & for s1 be sequence of S
st rng s1 c= Z & s1 is convergent & lim s1 in Z
holds f/*s1 is convergent & f/.(lim s1) = lim (f/*s1)
proof
assume A1: f is_continuous_on Z; then
A2: Z c= dom f by NFCONT_1:def 8;
now let s1 be sequence of S;
assume A3: rng s1 c= Z & s1 is convergent & lim s1 in Z; then
A4: f|Z is_continuous_in (lim s1) by A1,NFCONT_1:def 8;
dom (f|Z) = dom f /\ Z by PARTFUN2:15; then
A5: dom (f|Z) = Z by A2,XBOOLE_1:28;
now let n be Element of NAT;
dom s1 = NAT by FUNCT_2:def 1; then
A6: s1.n in rng s1 by FUNCT_1:3;
thus ((f|Z)/*s1).n = (f|Z)/.(s1.n) by A3,A5,FUNCT_2:109
.= f/.(s1.n) by A3,A5,A6,PARTFUN2:15
.= (f/*s1).n by A2,A3,FUNCT_2:109,XBOOLE_1:1;
end; then
A7: (f|Z)/*s1 = f/*s1;
f/.(lim s1) = (f|Z)/.(lim s1) by A3,A5,PARTFUN2:15;
hence f/*s1 is convergent & f/.(lim s1) = lim (f/*s1)
by A3,A5,A4,A7,NFCONT_1:def 6;
end;
hence thesis by A1,NFCONT_1:def 8;
end;
assume that
A8: Z c= dom f and
A9: for s1 be sequence of S
st rng s1 c= Z & s1 is convergent & lim s1 in Z
holds f/*s1 is convergent & f/.(lim s1) = lim (f/*s1);
dom (f|Z) = dom f /\ Z by PARTFUN2:15; then
A10:dom (f|Z) = Z by A8,XBOOLE_1:28;
now let x1 be Point of S;
assume A11: x1 in Z;
now let s1 be sequence of S such that
A12: rng s1 c= dom (f|Z) & s1 is convergent & lim s1=x1;
now let n be Element of NAT;
dom s1 = NAT by FUNCT_2:def 1; then
A13: s1.n in rng s1 by FUNCT_1:3;
thus ((f|Z)/*s1).n = (f|Z)/.(s1.n) by A12,FUNCT_2:109
.= f/.(s1.n) by A12,A13,PARTFUN2:15
.= (f/*s1).n by A8,A10,A12,FUNCT_2:109,XBOOLE_1:1;
end; then
A14: (f|Z)/*s1 = f/*s1;
(f|Z)/.(lim s1) = f/.(lim s1) by A11,A10,A12,PARTFUN2:15;
hence (f|Z)/*s1 is convergent & (f|Z)/.x1 = lim ((f|Z)/*s1)
by A9,A11,A10,A12,A14;
end;
hence f|Z is_continuous_in x1 by A11,A10,NFCONT_1:def 6;
end;
hence thesis by A8,NFCONT_1:def 8;
end;
theorem Th3:
for f be PartFunc of REAL i,REAL holds dom <>*f = dom f
proof
let f be PartFunc of REAL i,REAL;
rng f c= dom (proj(1,1) qua Function") by PDIFF_1:2;
hence thesis by RELAT_1:27;
end;
theorem
for f be PartFunc of REAL i,REAL st Z c= dom f holds dom ((<>*f) |Z) = Z
proof
let f be PartFunc of REAL i,REAL;
assume Z c= dom f; then
Z c= dom (<>*f) by Th3;
hence thesis by RELAT_1:62;
end;
theorem Th5:
for f be PartFunc of REAL i,REAL holds <>*(f|Z) = (<>*f) |Z
proof
let f be PartFunc of REAL i,REAL;
set W = proj(1,1) qua Function";
rng (f|Z) c= dom W by PDIFF_1:2; then
dom(W*(f|Z)) = dom (f|Z) by RELAT_1:27
.= dom f /\ Z by RELAT_1:61; then
A1:dom(W*(f|Z)) = (dom <>*f) /\ Z by Th3;
now let x be object;
assume A2: x in dom ((<>*f) | Z); then
x in (dom <>*f) /\ Z by RELAT_1:61; then
x in dom f /\ Z by Th3; then
A3: x in Z & x in dom f by XBOOLE_0:def 4;
dom(W*(f|Z)) = dom ((<>*f) | Z) by A1,RELAT_1:61; then
(<>*(f|Z)).x = W.((f|Z).x) by A2,FUNCT_1:12
.= W.(f.x) by A3,FUNCT_1:49
.= (W*f).x by A3,FUNCT_1:13;
hence (<>*(f|Z)).x =((<>*f) |Z).x by A2,FUNCT_1:47;
end;
hence thesis by A1,FUNCT_1:2,RELAT_1:61;
end;
theorem Th6:
for f be PartFunc of REAL i,REAL, x be Element of REAL i st
x in dom f holds (<>*f).x = <* f.x *> & (<>*f)/.x = <* f/.x *>
proof
let f be PartFunc of REAL i,REAL, x be Element of REAL i;
set I=proj(1,1) qua Function";
assume A1: x in dom f; then
(<>*f).x = I.(f.x) by FUNCT_1:13;
hence A2: (<>*f).x = <* f.x *> by PDIFF_1:1;
x in dom <>*f by A1,Th3; then
(<>*f)/.x = (<>*f).x by PARTFUN1:def 6;
hence (<>*f)/.x = <* f/.x *> by A1,A2,PARTFUN1:def 6;
end;
theorem Th7:
for f,g be PartFunc of REAL i,REAL
holds <>*(f+g) = <>*f + <>*g & <>*(f-g) = <>*f - <>*g
proof
let f,g be PartFunc of REAL i,REAL;
A1:dom (<>*(f+g)) = dom (f+g) & dom (<>*(f-g)) = dom (f-g) &
dom (<>*f) = dom f & dom (<>*g) = dom g by Th3; then
dom (<>*(f+g)) = dom (<>*f) /\ dom (<>*g) &
dom (<>*(f-g)) = dom (<>*f) /\ dom (<>*g) by VALUED_1:12,def 1; then
A2:dom (<>*(f+g)) = dom (<>*f+<>*g) &
dom (<>*(f-g)) = dom (<>*f-<>*g) by VALUED_2:def 45,def 46;
now let x be object;
assume A3:x in dom (<>*(f+g)); then
x in dom f /\ dom g by A1,VALUED_1:def 1; then
x in dom f & x in dom g by XBOOLE_0:def 4; then
A4: <* f.x *> = (<>*f).x & <* g.x *> = (<>*g).x by Th6;
(<>*(f+g)).x = <* (f+g).x *> by Th6,A3,A1
.= <* f.x+g.x *> by A3,A1,VALUED_1:def 1
.= (<>*f).x + (<>*g).x by A4,RVSUM_1:13;
hence (<>*(f+g)).x = (<>*f+ <>*g).x by A2,A3,VALUED_2:def 45;
end;
hence <>*(f+g) = <>*f + <>*g by A2,FUNCT_1:2;
now let x be object;
assume A5:x in dom (<>*(f-g)); then
x in dom f /\ dom g by A1,VALUED_1:12; then
x in dom f & x in dom g by XBOOLE_0:def 4; then
A6: <* f.x *> = (<>*f).x & <* g.x *> = (<>*g).x by Th6;
thus (<>*(f-g)).x = <* (f-g).x *> by Th6,A5,A1
.= <* f.x-g.x *> by A5,A1,VALUED_1:13
.= (<>*f).x - (<>*g).x by A6,RVSUM_1:29
.= (<>*f- <>*g).x by A2,A5,VALUED_2:def 46;
end;
hence thesis by A2,FUNCT_1:2;
end;
theorem Th8:
for f be PartFunc of REAL i,REAL, r be Real
holds <>*(r(#)f) = r(#)(<>*f)
proof
let f be PartFunc of REAL i,REAL, r be Real;
A1:dom (<>*(r(#)f)) = dom (r(#)f) by Th3; then
A2:dom (<>*(r(#)f)) = dom f by VALUED_1:def 5; then
A3:dom (<>*(r(#)f)) = dom (<>*f) by Th3
.= dom (r(#)(<>*f)) by VALUED_2:def 39;
now let x be object;
reconsider fx = f.x as Element of REAL by XREAL_0:def 1;
assume A4:x in dom (<>*(r(#)f)); then
(<>*(r(#)f)).x = <* (r(#)f).x *> by A1,Th6
.= <* r*(f.x) *> by A4,A1,VALUED_1:def 5
.= r(#)<* fx *> by RVSUM_1:47
.= r(#)(<>*f).x by A4,A2,Th6;
hence (<>*(r(#)f)).x = (r(#)(<>*f)).x by A4,A3,VALUED_2:def 39;
end;
hence thesis by A3,FUNCT_1:2;
end;
Lm1:
for x be Real, y be Element of REAL 1 st <*x*> = y
holds |.x.| = |.y.|
proof
let x be Real, y be Element of REAL 1;
assume A1: <*x*> = y;
reconsider I=proj(1,1) qua Function" as Function of REAL,REAL 1
by PDIFF_1:2;
reconsider y0=y as Point of REAL-NS 1 by REAL_NS1:def 4;
I.x = y by A1,PDIFF_1:1; then
|.x.| = ||.y0.|| by PDIFF_1:3;
hence thesis by REAL_NS1:1;
end;
theorem Th9:
for f be PartFunc of REAL i,REAL, g be PartFunc of REAL i,REAL 1
st <>*f = g holds |.f.| = |.g.|
proof
let f be PartFunc of REAL i,REAL, g be PartFunc of REAL i,REAL 1;
assume A1: <>*f = g;
A2:dom |.g.| = dom g by NFCONT_4:def 2
.= dom f by A1,Th3; then
A3:dom |.g.| = dom |.f.| by VALUED_1:def 11;
now let x be Element of REAL i;
assume A4: x in dom |.g.|; then
A5: g/.x = <* f/.x *> by A1,A2,Th6;
thus (|.g.|).x = (|.g.|)/.x by A4,PARTFUN1:def 6
.= |. g/.x .| by A4,NFCONT_4:def 2
.= |. f/.x .| by A5,Lm1
.= |. f.x .| by A2,A4,PARTFUN1:def 6
.= (|.f.|).x by VALUED_1:18;
end;
hence thesis by A3,PARTFUN1:5;
end;
theorem
for X be Subset of REAL m, Y be Subset of REAL-NS m st
X = Y holds X is open iff Y is open;
theorem Th11:
for q be Real, i being Nat
st 1 <= i & i <= j holds |. reproj(i,0*j).q .| = |.q.|
proof
let q be Real, i be Nat;
assume A1: 1 <= i & i <= j;
reconsider q as Element of REAL by XREAL_0:def 1;
set y = 0*j;
A2:reproj(i,0*j).q = Replace(y,i,q) by PDIFF_1:def 5;
y in j-tuples_on REAL; then
ex s be Element of REAL* st s=y & len s = j; then
A3:reproj(i,0*j ).q = (y| (i-'1))^<*q*>^(y/^i) by A1,A2,FINSEQ_7:def 1;
sqrt Sum sqr(y| (i-'1)) = |. 0*(i-'1) .| by A1,PDIFF_7:2; then
sqrt Sum sqr(y| (i-'1)) = 0 by EUCLID:7; then
A4:Sum sqr(y| (i-'1)) = 0 by RVSUM_1:86,SQUARE_1:24;
sqrt Sum sqr(y/^i) = |. 0*(j-'i) .| by PDIFF_7:3; then
A5:sqrt Sum sqr(y/^i) = 0 by EUCLID:7;
reconsider q2 = q^2 as Element of REAL by XREAL_0:def 1;
sqr((y| (i-'1))^<*q*>^(y/^i))
= sqr((y| (i-'1))^<*q*>)^sqr(y/^i) by TOPREAL7:10
.= sqr(y| (i-'1))^sqr<*q*>^sqr(y/^i) by TOPREAL7:10
.= sqr(y| (i-'1))^<*q^2*>^sqr(y/^i) by RVSUM_1:55; then
Sum sqr((y| (i-'1))^<*q*>^(y/^i))
= Sum(sqr(y| (i-'1))^<*q2*>) + Sum sqr(y/^i) by RVSUM_1:75
.= Sum sqr(y| (i-'1)) + q^2 + Sum sqr(y/^i) by RVSUM_1:74
.= q^2 by A4,A5,RVSUM_1:86,SQUARE_1:24;
hence thesis by A3,COMPLEX1:72;
end;
Lm2:
for x be Element of REAL m, Z be Subset of REAL m, i being Nat st
Z is open & x in Z & 1 <= i & i <= m
ex N be Neighbourhood of proj(i,m).x st
for z be Element of REAL st z in N holds (reproj(i,x)).z in Z
proof
let x be Element of REAL m, Z be Subset of REAL m, i be Nat;
assume that
A1: Z is open & x in Z and
A2: 1 <= i & i <= m;
consider r be Real such that
A3: 0 < r & {y where y is Element of REAL m : |. y - x .| < r} c= Z
by A1,PDIFF_7:31;
set N = ]. proj(i,m).x-r,proj(i,m).x+r.[;
reconsider N as Neighbourhood of proj(i,m).x by A3,RCOMP_1:def 6;
take N;
let z be Element of REAL;
assume z in N; then
A4: |. z - proj(i,m).x .| < r by RCOMP_1:1;
|. (reproj(i,x)).z - x .|
= |. reproj(i, 0*m ).(z - proj(i,m).x) .| by PDIFF_7:6
.= |. z - proj(i,m).x .| by A2,Th11; then
(reproj(i,x)).z in {y where y is Element of REAL m : |. y - x .| < r}
by A4;
hence thesis by A3;
end;
theorem Th12:
for x be Element of REAL j holds x = reproj(i,x).(proj(i,j).x)
proof
let x be Element of REAL j;
set q=reproj(i,x).(proj(i,j).x);
A1:dom q = Seg j & dom x = Seg j by FINSEQ_1:89;
A2:len x = j by A1,FINSEQ_1:def 3;
for k be Nat st k in dom x holds x.k = q.k
proof
let k be Nat;
assume A3: k in dom x; then
A4: 1 <= k & k <= j by A1,FINSEQ_1:1;
q = Replace(x,i,proj(i,j).x) by PDIFF_1:def 5; then
A5: q.k = Replace(x,i,proj(i,j).x)/.k by A3,A1,PARTFUN1:def 6;
per cases;
suppose A6: k = i; then
q.k = proj(i,j).x by A2,A4,A5,FINSEQ_7:8;
hence x.k = q.k by A6,PDIFF_1:def 1;
end;
suppose k <> i; then
q.k = x/.k by A2,A4,A5,FINSEQ_7:10;
hence x.k = q.k by A3,PARTFUN1:def 6;
end;
end;
hence x = reproj(i,x).(proj(i,j).x) by A1,FINSEQ_1:13;
end;
begin :: Continuity and Differentiability
theorem Th13:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL n st
f is_differentiable_on X holds X is open by PDIFF_6:33;
theorem Th14:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL n st X is open holds
( f is_differentiable_on X
iff
X c=dom f &
for x be Element of REAL m st x in X holds f is_differentiable_in x )
by PDIFF_6:32;
definition
let m,n be non zero Element of NAT, Z be set,
f be PartFunc of REAL m,REAL n;
assume A1: Z c= dom f;
func f`|Z -> PartFunc of REAL m, Funcs(REAL m,REAL n) means :Def1:
dom it = Z &
for x be Element of REAL m st x in Z holds it/.x = diff(f,x);
existence
proof
defpred P[Element of REAL m,set] means $1 in Z & $2 = diff(f,$1);
consider F being PartFunc of REAL m,Funcs(REAL m,REAL n) such that
A2: (for x be Element of REAL m holds x in dom F iff
(ex z be Element of Funcs(REAL m,REAL n) st P[x,z]))
& for x be Element of REAL m st x in dom F holds P[x,F.x]
from SEQ_1:sch 2;
take F;
A3:Z is Subset of REAL m by A1,XBOOLE_1:1;
a5:now let x be object;
assume
A4: x in Z; then
reconsider z = x as Element of REAL m by A3;
reconsider y = diff(f,z) as Element of Funcs(REAL m,REAL n) by FUNCT_2:8;
P[z,y] by A4;
hence x in dom F by A2;
end; then
A5:Z c= dom F;
dom F c= Z by A2;
hence dom F = Z by A5,XBOOLE_0:def 10;
let x be Element of REAL m;
assume A6: x in Z; then
F.x = diff(f,x) by A2,A5;
hence F/.x = diff(f,x) by A6,a5,PARTFUN1:def 6;
end;
uniqueness
proof
let F,G be PartFunc of REAL m,Funcs(REAL m,REAL n);
assume that
A7: dom F = Z and
A8: for x be Element of REAL m st x in Z holds F/.x = diff(f,x) and
A9: dom G = Z and
A10: for x be Element of REAL m st x in Z holds G/.x = diff(f,x);
now let x be Element of REAL m;
assume A11: x in dom F; then
F/.x = diff(f,x) by A7,A8;
hence F/.x = G/.x by A7,A10,A11;
end;
hence thesis by A7,A9,PARTFUN2:1;
end;
end;
theorem
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL n st
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 = diff(f,x) + diff(g,x)
proof
let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL n;
assume A1: f is_differentiable_on X & g is_differentiable_on X; then
A2:X is open by PDIFF_6:33; then
A3:X c=dom f & X c=dom g by A1,Th14;
dom (f+g) = dom f /\ dom g by VALUED_2:def 45; then
A4:X c= dom (f+g) by A3,XBOOLE_1:19;
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,Th14;
hence f+g is_differentiable_in x by PDIFF_6:20;
end;
hence f+g is_differentiable_on X by A4,A2,Th14;
let x be Element of REAL m;
assume A5:x in X; then
f is_differentiable_in x & g is_differentiable_in x
by A1,A2,Th14; then
diff(f+g,x) = diff(f,x)+ diff(g,x) by PDIFF_6:20;
hence ((f+g)`|X)/.x = diff(f,x)+ diff(g,x) by A4,A5,Def1;
end;
theorem
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL n st
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 = diff(f,x)- diff(g,x)
proof
let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL n;
assume
A1:f is_differentiable_on X & g is_differentiable_on X; then
A2: X is open by Th13; then
A3:X c= dom f & X c= dom g by A1,Th14;
dom (f-g) = dom f /\ dom g by VALUED_2:def 46; then
A4:X c= dom (f-g) by A3,XBOOLE_1:19;
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,Th14;
hence f-g is_differentiable_in x by PDIFF_6:21;
end;
hence f-g is_differentiable_on X by A4,A2,Th14;
let x be Element of REAL m;
assume A5: x in X; then
f is_differentiable_in x & g is_differentiable_in x
by A1,A2,Th14; then
diff(f-g,x) = diff(f,x)- diff(g,x) by PDIFF_6:21;
hence ((f-g)`|X)/.x = diff(f,x)- diff(g,x) by A4,A5,Def1;
end;
theorem
for X be Subset of REAL m, f be PartFunc of REAL m,REAL n, r be Real
st 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(#)diff(f,x)
proof
let X be Subset of REAL m, f be PartFunc of REAL m,REAL n, r be Real;
assume A1: f is_differentiable_on X; then
A2: X is open by Th13; then
X c=dom f by A1,Th14; then
A3:X c= dom (r(#)f) by VALUED_2:def 39;
now let x be Element of REAL m;
assume x in X; then
f is_differentiable_in x by A1,A2,Th14;
hence r(#)f is_differentiable_in x by PDIFF_6:22;
end;
hence r(#)f is_differentiable_on X by A3,A2,Th14;
let x be Element of REAL m;
assume A4:x in X; then
f is_differentiable_in x by A1,A2,Th14; then
diff(r(#)f,x) = r(#)diff(f,x) by PDIFF_6:22;
hence ((r(#)f)`|X)/.x = r(#)diff(f,x) by A3,A4,Def1;
end;
reconsider jj=1 as Element of REAL by XREAL_0:def 1;
theorem Th18:
for f be Point of R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j)
ex p be Point of REAL-NS j st
p = f.<*1*>
& (for r be Real, x be Point of REAL-NS 1 st x = <*r*> holds f.x = r*p)
& (for x be Point of REAL-NS 1 holds ||. f.x .|| = ||.p.|| * ||.x.||)
proof
let f be Point of
R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j);
reconsider One = <*jj*> as Element of REAL 1 by FINSEQ_2:98;
reconsider L = f as Lipschitzian LinearOperator of REAL-NS 1,REAL-NS j
by LOPBAN_1:def 9;
the carrier of REAL-NS 1 = REAL 1 by REAL_NS1:def 4; then
dom L = REAL 1 by FUNCT_2:def 1; then
reconsider p = f.<*jj*> as Point of REAL-NS j by FINSEQ_2:98,PARTFUN1:4;
reconsider OneNS = One as VECTOR of REAL-NS 1 by REAL_NS1:def 4;
A1:now let r be Real, x be Point of REAL-NS 1;
assume x = <*r*>; then
A2: f.x = L.<*r*>;
<*r*> = <* r*1 *>
.= r*<*1*> by RVSUM_1:47
.= r*OneNS by REAL_NS1:3;
hence f.x = r*p by A2,LOPBAN_1:def 5;
end;
now let x be Point of REAL-NS 1;
A3: the carrier of REAL-NS 1 = REAL 1 by REAL_NS1:def 4; then
reconsider x0=x as FinSequence of REAL by FINSEQ_2:def 3;
consider r be Element of REAL such that
A4: x0 = <*r*> by A3,FINSEQ_2:97;
thus ||. f.x .|| = ||. r*p .|| by A1,A4
.= |.r.| * ||.p.|| by NORMSP_1:def 1
.= ||.p.|| * ||.x.|| by A4,PDIFF_8:2;
end;
hence thesis by A1;
end;
theorem Th19:
for f be Point of R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j)
ex p be Point of REAL-NS j st p = f.<*1*> & ||.p.|| = ||.f.||
proof
let f be Point of
R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j);
reconsider g = f as Lipschitzian LinearOperator of REAL-NS 1,REAL-NS j
by LOPBAN_1:def 9;
consider p be Point of REAL-NS j such that
A1: p = f.<*1*>
& (for r be Real, x be Point of REAL-NS 1 st x = <*r*> holds f.x = r*p)
& (for x be Point of REAL-NS 1 holds ||. f.x .|| = ||.p.|| * ||.x.||)
by Th18;
<*jj*> in REAL 1 by FINSEQ_2:98; then
reconsider One = <*jj*> as Point of REAL-NS 1 by REAL_NS1:def 4;
||. g.One .|| <= ||.f.|| * ||.One.|| by LOPBAN_1:32; then
||. g.One .|| <= ||.f.|| * |.1.| by PDIFF_8:2; then
A2: ||. f.One .|| <= ||.f.|| * 1 by ABSVALUE:def 1;
for x be Point of REAL-NS 1 st
||.x.|| <= 1 holds ||. f.x .|| <= ||.p.|| * ||.x.|| by A1; then
||.f.|| <= ||.p.|| by Th1;
hence thesis by A1,A2,XXREAL_0:1;
end;
theorem Th20:
for f be Point of R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j),
x be Point of REAL-NS 1 holds
||. f.x .|| = ||.f.|| * ||.x.||
proof
let f be Point of
R_NormSpace_of_BoundedLinearOperators(REAL-NS 1,REAL-NS j),
x be Point of REAL-NS 1;
A1:ex p be Point of REAL-NS j st p = f.<*1*>
& (for r be Real, x be Point of REAL-NS 1 st x = <*r*> holds f.x = r*p)
& (for x be Point of REAL-NS 1 holds ||. f.x .|| = ||.p.|| * ||.x.||)
by Th18;
ex q be Point of REAL-NS j st q = f.<*1*> & ||.f.|| = ||.q.|| by Th19;
hence thesis by A1;
end;
theorem Th21:
for f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i being Nat st
1 <= i & i <= m & X is open & g = f & X = Y &
f is_partial_differentiable_on X,i
holds
for x be Element of REAL m, y be Point of REAL-NS m st x in X & x = y
holds partdiff(f,x,i) = partdiff(g,y,i).<*1*>
proof
let f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i be Nat;
assume
A1: 1 <= i & i <= m & X is open & g = f & X = Y
& f is_partial_differentiable_on X,i;
let x be Element of REAL m, y be Point of REAL-NS m;
assume A2: x in X & x = y; then
f is_partial_differentiable_in x,i by A1,PDIFF_7:34; then
ex g0 be PartFunc of REAL-NS m,REAL-NS n, y0 be Point of REAL-NS m st
f = g0 & x = y0 & partdiff(f,x,i) = partdiff(g0,y0,i).<*1*>
by PDIFF_1:def 14;
hence partdiff(f,x,i) = partdiff(g,y,i).<*1*> by A1,A2;
end;
theorem Th22:
for f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i being Nat st
1 <= i & i <= m & X is open & g = f & X = Y &
f is_partial_differentiable_on X,i
holds
for x0,x1 be Element of REAL m, y0,y1 be Point of REAL-NS m st
x0 = y0 & x1 = y1 & x0 in X & x1 in X
holds
|. f`partial|(X,i)/.x1 - f`partial|(X,i)/.x0 .|
= ||. (g`partial|(Y,i))/.y1 - (g`partial|(Y,i))/.y0 .||
proof
let f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i be Nat;
assume
A1:1 <=i & i <= m & X is open & g = f & X = Y
& f is_partial_differentiable_on X,i;
let x0,x1 be Element of REAL m, y0,y1 be Point of REAL-NS m;
assume A2: x0 = y0 & x1 = y1 & x0 in X & x1 in X;
<*jj*> is Element of REAL 1 by FINSEQ_2:98; then
reconsider Pt1 = <*jj*> as Point of REAL-NS 1 by REAL_NS1:def 4;
f`partial|(X,i)/.x1 = partdiff(f,x1,i)
& f`partial|(X,i)/.x0 = partdiff(f,x0,i) by A2,A1,PDIFF_7:def 5; then
f`partial|(X,i)/.x1 = partdiff(g,y1,i).Pt1
& f`partial|(X,i)/.x0 = partdiff(g,y0,i).Pt1 by Th21,A1,A2; then
f`partial|(X,i)/.x1 - f`partial|(X,i)/.x0
= partdiff(g,y1,i).Pt1 - partdiff(g,y0,i).Pt1 by REAL_NS1:5; then
A3:f`partial|(X,i)/.x1 - f`partial|(X,i)/.x0
= (partdiff(g,y1,i) - partdiff(g,y0,i)).Pt1 by LOPBAN_1:40;
||.Pt1.|| = |.1.| by PDIFF_8:2; then
||.Pt1.|| = 1 by ABSVALUE:def 1; then
A4: ||. (partdiff(g,y1,i) - partdiff(g,y0,i)).Pt1 .||
= ||. partdiff(g,y1,i) - partdiff(g,y0,i) .|| * 1 by Th20;
g is_partial_differentiable_on Y,i by A1,PDIFF_7:33; then
g`partial|(Y,i)/.y1 = partdiff(g,y1,i) &
g`partial|(Y,i)/.y0 = partdiff(g,y0,i) by A1,A2,PDIFF_1:def 20;
hence thesis by A3,A4,REAL_NS1:1;
end;
theorem Th23:
for f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i being Nat
st 1 <=i & i <= m & X is open & g = f & X = Y
holds
(f is_partial_differentiable_on X,i & f`partial|(X,i) is_continuous_on X)
iff
(g is_partial_differentiable_on Y,i & g`partial|(Y,i) is_continuous_on Y)
proof
let f be PartFunc of REAL m,REAL n, g be PartFunc of REAL-NS m,REAL-NS n,
X be Subset of REAL m, Y be Subset of REAL-NS m, i be Nat;
assume
A1: 1 <=i & i <= m & X is open & g = f & X = Y;
hereby assume
A2: f is_partial_differentiable_on X,i & f`partial|(X,i) is_continuous_on X;
hence g is_partial_differentiable_on Y,i by A1,PDIFF_7:33; then
A3: dom (g`partial|(Y,i)) = Y by PDIFF_1:def 20;
for y0 be Point of REAL-NS m, r be Real st y0 in Y & 0 < r
ex s be Real st 0 < s & for y1 be Point of REAL-NS m st
y1 in Y & ||. y1- y0 .|| < s holds
||. (g`partial|(Y,i))/.y1 - (g`partial|(Y,i))/.y0 .|| < r
proof
let y0 be Point of REAL-NS m, r be Real;
reconsider x0 = y0 as Element of REAL m by REAL_NS1:def 4;
assume
A4: y0 in Y & 0 < r; then
consider s be Real such that
A5: 0 < s & for x1 be Element of REAL m st x1 in X & |. x1-x0 .| ~~*f is_continuous_in x0
proof
let f be PartFunc of REAL m,REAL, x0 be Element of REAL m;
set g = <>*f;
hereby assume A1: f is_continuous_in x0; then
A2: x0 in dom f by Th36; then
A3: x0 in dom g by Th3;
now let r be Real;
assume 0 < r; then
consider s be Real such that
A4: 0 < s
& for x1 be Element of REAL m st x1 in dom f & |. x1- x0 .| < s
holds |. f/.x1-f/.x0 .| < r by A1,Th36;
take s;
thus 0 < s by A4;
hereby let x1 be Element of REAL m;
assume A5: x1 in dom g & |. x1- x0 .| < s; then
A6: x1 in dom f by Th3; then
A7: |. f/.x1-f/.x0 .| & g/.x0 = <* f/.x0 *> by A2,A6,Th6; then
g/.x1-g/.x0 = <* f/.x1 - f/.x0 *> by RVSUM_1:29;
hence |. g/.x1-g/.x0 .| < r by A7,Lm1;
end;
end;
hence g is_continuous_in x0 by A3,PDIFF_7:36;
end;
assume A8:g is_continuous_in x0; then
x0 in dom g by PDIFF_7:36; then
A9: x0 in dom f by Th3;
now let r be Real;
assume 0 & g/.x0 = <* f/.x0 *> by A9,A11,Th6; then
g/.x1-g/.x0 = <* f/.x1 - f/.x0 *> by RVSUM_1:29;
hence |. f/.x1-f/.x0 .| < r by A12,Lm1;
end;
end;
hence thesis by A9,Th36;
end;
theorem
for f,g be PartFunc of REAL m,REAL, x0 be Element of REAL m
st f is_continuous_in x0 & g is_continuous_in x0
holds f+g is_continuous_in x0 & f-g is_continuous_in x0
proof
let f,g be PartFunc of REAL m,REAL, x0 be Element of REAL m;
assume f is_continuous_in x0 & g is_continuous_in x0; then
<>*f is_continuous_in x0 & <>*g is_continuous_in x0 by Th37; then
A1:<>*f + <>*g is_continuous_in x0 & <>*f - <>*g is_continuous_in x0 by Th29;
<>*f + <>*g = <>*(f+g) & <>*f - <>*g = <>*(f-g) by Th7;
hence thesis by A1,Th37;
end;
theorem
for f be PartFunc of REAL m,REAL, x0 be Element of REAL m, r be Real
st f is_continuous_in x0 holds r(#)f is_continuous_in x0
proof
let f be PartFunc of REAL m,REAL, x0 be Element of REAL m, r be Real;
assume f is_continuous_in x0; then
A1:r(#)(<>*f) is_continuous_in x0 by Th30,Th37;
r(#)(<>*f) = <>*(r(#)f) by Th8;
hence thesis by A1,Th37;
end;
theorem
for f be PartFunc of REAL m,REAL, x0 be Element of REAL m
st f is_continuous_in x0 holds |.f.| is_continuous_in x0
proof
let f be PartFunc of REAL m,REAL, x0 be Element of REAL m;
assume f is_continuous_in x0; then
<>*f is_continuous_in x0 by Th37; then
|. <>*f .| is_continuous_in x0 by Th32;
hence thesis by Th9;
end;
Lm3:
for f be PartFunc of REAL i,REAL,
g be PartFunc of REAL-NS i,REAL,
x be Element of REAL i, y be Point of REAL-NS i
st f = g & x = y holds
f is_continuous_in x
iff
y in dom g
& (for s be sequence of REAL-NS i
st rng s c= dom g & s is convergent & lim s = y
holds g/*s is convergent & g/.y = lim (g/*s) )
proof
let f be PartFunc of REAL i,REAL,
g be PartFunc of REAL-NS i,REAL,
x be Element of REAL i, y be Point of REAL-NS i;
assume A1: f=g & x=y;
hereby assume f is_continuous_in x; then
g is_continuous_in y by A1,NFCONT_4:21;
hence y in dom g & for s1 be sequence of REAL-NS i
st rng s1 c= dom g & s1 is convergent & lim s1 = y
holds g/*s1 is convergent & g/.y = lim (g/*s1) by NFCONT_1:def 6;
end;
hereby assume y in dom g & (for s be sequence of REAL-NS i st rng s c= dom g
& s is convergent & lim s = y
holds g/*s is convergent & g/.y = lim (g/*s) ); then
g is_continuous_in y by NFCONT_1:def 6;
hence f is_continuous_in x by A1,NFCONT_4:21;
end;
end;
theorem
for f,g be PartFunc of REAL i,REAL, x be Element of REAL i
st f is_continuous_in x & g is_continuous_in x holds f(#)g is_continuous_in x
proof
let g1,g2 be PartFunc of REAL i,REAL, x be Element of REAL i;
assume A1: g1 is_continuous_in x & g2 is_continuous_in x;
reconsider y=x as Point of REAL-NS i by REAL_NS1:def 4;
reconsider f1=g1, f2=g2 as PartFunc of REAL-NS i,REAL
by REAL_NS1:def 4;
A2:dom (f1(#)f2) = dom f1 /\ dom f2 by VALUED_1:def 4;
f1 is_continuous_in y & f2 is_continuous_in y by A1,NFCONT_4:21; then
A3:y in dom f1 & y in dom f2 by NFCONT_1:def 6; then
A4:y in dom (f1(#)f2) by A2,XBOOLE_0:def 4;
now let s1 be sequence of REAL-NS i;
assume that
A5: rng s1 c= dom(f1(#)f2) and
A6: s1 is convergent & lim s1=y;
dom (f1(#)f2) c= dom f1 & dom (f1(#)f2) c= dom f2 by A2,XBOOLE_1:17; then
A7:rng s1 c= dom f1 & rng s1 c= dom f2 by A5; then
A8:f1/*s1 is convergent & f2/*s1 is convergent by A1,A6,Lm3; then
(f1/*s1)(#)(f2/*s1) is convergent;
hence (f1(#)f2)/*s1 is convergent by A2,A5,RFUNCT_2:8;
f1.y = f1/.y & f2.y = f2/.y by A3,PARTFUN1:def 6; then
A9:f1.y = lim (f1/*s1) & f2.y = lim (f2/*s1) by A1,A6,A7,Lm3;
thus (f1(#)f2)/.y = (f1(#)f2).y by A4,PARTFUN1:def 6
.= f1.y * f2.y by VALUED_1:5
.= lim ((f1/*s1)(#)(f2/*s1)) by A9,A8,SEQ_2:15
.= lim ((f1(#)f2)/*s1) by A2,A5,RFUNCT_2:8;
end;
hence thesis by Lm3,A4;
end;
definition
let m be non zero Element of NAT;
let Z be set;
let f be PartFunc of REAL m,REAL;
pred f is_continuous_on Z means
for x0 be Element of REAL m st x0 in Z holds f|Z is_continuous_in x0;
end;
theorem Th42:
for f be PartFunc of REAL m,REAL,
g be PartFunc of REAL-NS m,REAL
st f = g holds Z c= dom f & f is_continuous_on Z iff g is_continuous_on Z
proof
let f be PartFunc of REAL m,REAL,
g be PartFunc of REAL-NS m,REAL;
assume A1: f = g;
hereby
assume
A2: Z c= dom f;
assume A3: f is_continuous_on Z;
now let x0 be Point of REAL-NS m;
assume A4: x0 in Z;
reconsider y0=x0 as Element of REAL m by REAL_NS1:def 4;
f|Z is_continuous_in y0 by A4,A3;
hence g|Z is_continuous_in x0 by A1,NFCONT_4:21;
end;
hence g is_continuous_on Z by A1,A2,NFCONT_1:def 8;
end;
assume A5: g is_continuous_on Z;
hence Z c= dom f by A1,NFCONT_1:def 8;
let x0 be Element of REAL m;
assume A6: x0 in Z;
reconsider y0=x0 as Point of REAL-NS m by REAL_NS1:def 4;
g|Z is_continuous_in y0 by A6,A5,NFCONT_1:def 8;
hence f|Z is_continuous_in x0 by A1,NFCONT_4:21;
end;
theorem Th43:
for f be PartFunc of REAL m,REAL,
g be PartFunc of REAL-NS m,REAL
st f = g & Z c= dom f holds
f is_continuous_on Z
iff
for s be sequence of REAL-NS m st rng s c= Z & s is convergent & lim s in Z
holds g/*s is convergent & g/.(lim s) = lim (g/*s)
proof
let f be PartFunc of REAL m,REAL,
g be PartFunc of REAL-NS m,REAL;
assume A1: f = g;
assume A2: Z c= dom f;
hereby assume f is_continuous_on Z; then
g is_continuous_on Z by A2,Th42,A1;
hence for s1 be sequence of REAL-NS m
st rng s1 c= Z & s1 is convergent & lim s1 in Z
holds g/*s1 is convergent & g/.(lim s1) = lim (g/*s1) by Th2;
end;
assume for s be sequence of REAL-NS m st rng s c= Z
& s is convergent & lim s in Z
holds g/*s is convergent & g/.(lim s) = lim (g/*s); then
g is_continuous_on Z by A1,A2,Th2;
hence f is_continuous_on Z by Th42,A1;
end;
theorem Th44:
for f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1
st <>*f = g holds Z c= dom f & f is_continuous_on Z iff g is_continuous_on Z
proof
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1;
assume A1: <>*f=g; then
A2:<>*(f|Z) =g|Z by Th5;
hence Z c= dom f & f is_continuous_on Z implies g is_continuous_on Z
by A1,Th3,Th37;
assume A3: g is_continuous_on Z;
hence Z c= dom f by Th3,A1;
let x0 be Element of REAL m;
assume x0 in Z;
hence f|Z is_continuous_in x0 by A3,A2,Th37;
end;
theorem Th45:
for f be PartFunc of REAL m,REAL st Z c= dom f holds
f is_continuous_on Z
iff
for x0 be Element of REAL m, r be Real st x0 in Z & 0 < r
ex s be Real st 0 < s
& for x1 be Element of REAL m st x1 in Z & |. x1- x0 .| < s
holds |. f/.x1 - f/.x0 .| < r
proof
let f be PartFunc of REAL m,REAL;
set g = <>*f;
assume A1: Z c= dom f;
hereby assume f is_continuous_on Z; then
A2: g is_continuous_on Z by A1,Th44;
thus for x0 be Element of REAL m, r be Real st x0 in Z & 0 & g/.x0 = <*f/.x0*> by A5,A1,A3,Th6; then
g/.x1-g/.x0 = <* f/.x1 - f/.x0 *> by RVSUM_1:29;
hence |. f/.x1-f/.x0 .| & g/.x0 = <*f/.x0*> by A1,A11,A9,Th6; then
g/.x1-g/.x0 = <* f/.x1 - f/.x0 *> by RVSUM_1:29;
hence |. g/.x1-g/.x0 .|*f is_continuous_on Z & <>*g is_continuous_on Z by Th44; then
A1:<>*f + <>*g is_continuous_on Z & <>*f - <>*g is_continuous_on Z by Th33;
<>*f + <>*g = <>*(f+g) & <>*f - <>*g = <>*(f-g) by Th7;
hence thesis by A1,Th44;
end;
theorem
for f be PartFunc of REAL m,REAL, r be Real
st Z c= dom f & f is_continuous_on Z holds r(#)f is_continuous_on Z
proof
let f be PartFunc of REAL m,REAL, r be Real;
assume Z c= dom f & f is_continuous_on Z; then
<>*f is_continuous_on Z by Th44; then
A1:r(#)(<>*f) is_continuous_on Z by Th34;
r(#)(<>*f) = <>*(r(#)f) by Th8;
hence thesis by A1,Th44;
end;
theorem
for f,g be PartFunc of REAL m,REAL
st f is_continuous_on Z & g is_continuous_on Z & Z c= dom f & Z c= dom g
holds f(#)g is_continuous_on Z
proof
let f,g be PartFunc of REAL m,REAL;
assume A1: f is_continuous_on Z & g is_continuous_on Z;
assume A2: Z c= dom f & Z c= dom g;
reconsider f1=f, g1=g as PartFunc of REAL-NS m,REAL
by REAL_NS1:def 4;
A3:Z c= dom f1 /\ dom g1 by A2,XBOOLE_1:19;
A4:dom (f1(#)g1) = dom f1 /\ dom g1 by VALUED_1:def 4;
now let s1 be sequence of REAL-NS m;
assume A5:rng s1 c= Z & s1 is convergent & lim s1 in Z; then
A6:f1/*s1 is convergent & g1/*s1 is convergent by A2,Th43,A1; then
A7:(f1/*s1)(#)(g1/*s1) is convergent;
A8:rng s1 c= dom f1 /\ dom g1 by A3,A5;
hence (f1(#)g1)/*s1 is convergent by A7,RFUNCT_2:8;
set y = lim s1;
f1.y =f1/.y & g1.y =g1/.y by A5,A2,PARTFUN1:def 6; then
A9: f1.y = lim (f1/*s1) & g1.y = lim (g1/*s1) by A5,A2,Th43,A1;
thus (f1(#)g1)/.(lim s1) = (f1(#)g1).y by A5,A3,A4,PARTFUN1:def 6
.= f1.y * g1.y by VALUED_1:5
.= lim ((f1/*s1)(#)(g1/*s1)) by A9,A6,SEQ_2:15
.= lim ((f1(#)g1)/*s1) by A8,RFUNCT_2:8;
end;
hence thesis by A3,A4,Th43;
end;
theorem Th49:
for f be PartFunc of REAL m,REAL, g be PartFunc of REAL-NS m,REAL
st f=g holds Z c= dom f & f is_continuous_on Z iff g is_continuous_on Z
proof
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL-NS m,REAL;
assume A1: f = g;
hereby assume
A2: Z c= dom f;
assume A3: f is_continuous_on Z;
now let y0 be Point of REAL-NS m,r be Real;
reconsider x0 = y0 as Element of REAL m by REAL_NS1:def 4;
assume y0 in Z & 0 < r; then
consider s be Real such that
A4: 0 < s
& for x1 be Element of REAL m st x1 in Z & |. x1- x0 .| < s
holds |. f/.x1-f/.x0 .|*f is_differentiable_in x & <>*g is_differentiable_in x; then
A2:<>*f + <>*g is_differentiable_in x
& <>*f - <>*g is_differentiable_in x by PDIFF_6:20,21;
hence f+g is_differentiable_in x by Th7;
thus diff(f+g,x) = proj(1,1)*diff(<>*f + <>*g,x) by Th7
.= proj(1,1)*(diff(<>*f,x) + diff(<>*g,x)) by A1,PDIFF_6:20
.= diff(f,x) + diff(g,x) by INTEGR15:15;
thus f-g is_differentiable_in x by A2,Th7;
thus diff(f-g,x) = proj(1,1)*diff(<>*f - <>*g,x) by Th7
.= proj(1,1)*(diff(<>*f,x) - diff(<>*g,x)) by A1,PDIFF_6:21
.= diff(f,x) - diff(g,x) by INTEGR15:15;
end;
theorem Th52:
for f be PartFunc of REAL m,REAL, r be Real, x be Element of REAL m st
f is_differentiable_in x holds
r(#)f is_differentiable_in x & diff(r(#)f,x) = r(#)diff(f,x)
proof
let f be PartFunc of REAL m,REAL, r be Real, x be Element of REAL m;
assume f is_differentiable_in x; then
A1:<>*f is_differentiable_in x; then
r(#)(<>*f) is_differentiable_in x by PDIFF_6:22;
hence r(#)f is_differentiable_in x by Th8;
thus diff(r(#)f,x) = proj(1,1)*diff(r(#)(<>*f),x) by Th8
.= proj(1,1)*(r(#)diff(<>*f,x)) by A1,PDIFF_6:22
.= r(#)diff(f,x) by INTEGR15:16;
end;
definition
let Z be set;
let m be non zero Nat;
let f be PartFunc of REAL m,REAL;
pred f is_differentiable_on Z means
for x be Element of REAL m st x in Z holds f|Z is_differentiable_in x;
end;
theorem Th53:
for f be PartFunc of REAL m,REAL,
g be PartFunc of REAL m,REAL 1 st <>*f = g holds
Z c= dom f & f is_differentiable_on Z iff g is_differentiable_on Z
proof
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1;
assume A1: <>*f=g;
A2:dom <>*f = dom f by Th3;
hereby
assume
A3: Z c= dom f;
assume
A4: f is_differentiable_on Z;
A5:Z c= dom g by A3,Th3,A1;
now let x be Element of REAL m;
assume x in Z; then
f|Z is_differentiable_in x by A4;
hence g|Z is_differentiable_in x by A1,Th5;
end;
hence g is_differentiable_on Z by A5,PDIFF_6:def 4;
end;
assume A6: g is_differentiable_on Z;
hence Z c= dom f by A2,A1,PDIFF_6:def 4;
hereby let x be Element of REAL m;
assume x in Z; then
g|Z is_differentiable_in x by A6,PDIFF_6:def 4;
hence f|Z is_differentiable_in x by A1,Th5;
end;
end;
theorem Th54:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL st
X c= dom f & X is open
holds
f is_differentiable_on X
iff
for x be Element of REAL m st x in X holds f is_differentiable_in x
proof
let X be Subset of REAL m, f be PartFunc of REAL m,REAL;
set g=<>*f;
assume
A1: X c= dom f;
assume X is open; then
A2:g is_differentiable_on X
iff
X c=dom g &
for x be Element of REAL m st x in X holds g is_differentiable_in x
by PDIFF_6:32;
thus f is_differentiable_on X implies
for x being Element of REAL m st x in X
holds f is_differentiable_in x by A1,A2,Th53;
assume for x be Element of REAL m st x in X holds f is_differentiable_in x;
hence f is_differentiable_on X by A1,A2,Th3,Th53,PDIFF_7:def 1;
end;
theorem Th55:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL st
X c= dom f & f is_differentiable_on X holds X is open
proof
let X be Subset of REAL m, f be PartFunc of REAL m,REAL;
reconsider g=<>*f as PartFunc of REAL m,REAL 1;
assume X c= dom f & f is_differentiable_on X; then
g is_differentiable_on X by Th53;
hence thesis by PDIFF_6:33;
end;
definition
let m be non zero Element of NAT;
let Z be set;
let f be PartFunc of REAL m,REAL;
assume A1: Z c= dom f;
func f`|Z -> PartFunc of REAL m, Funcs(REAL m,REAL) means :Def4:
dom it = Z & for x be Element of REAL m st x in Z holds it/.x = diff(f,x);
existence
proof
defpred P[Element of REAL m,set] means $1 in Z & $2 = diff(f,$1);
consider F being PartFunc of REAL m,Funcs(REAL m,REAL) such that
A2: (for x be Element of REAL m holds x in dom F iff
(ex z be Element of Funcs(REAL m,REAL) st P[x,z]))
& for x be Element of REAL m st x in dom F holds P[x,F.x] from SEQ_1:sch 2;
take F;
A3:Z is Subset of REAL m by A1,XBOOLE_1:1;
a5:now let x be object;
assume A4: x in Z; then
reconsider z = x as Element of REAL m by A3;
reconsider y = diff(f,z) as Element of Funcs(REAL m,REAL) by FUNCT_2:8;
P[z,y] by A4;
hence x in dom F by A2;
end; then
A5:Z c= dom F;
dom F c= Z by A2;
hence dom F = Z by A5,XBOOLE_0:def 10;
hereby let x be Element of REAL m;
assume A6: x in Z; then
F.x = diff(f,x) by A2,A5;
hence F/.x = diff(f,x) by A6,a5,PARTFUN1:def 6;
end;
end;
uniqueness
proof
let F,G be PartFunc of REAL m,Funcs(REAL m,REAL);
assume that
A7: dom F = Z & for x be Element of REAL m st x in Z holds F/.x = diff(f,x) and
A8: dom G = Z & for x be Element of REAL m st x in Z holds G/.x = diff(f,x);
now let x be Element of REAL m;
assume A9: x in dom F; then
F/.x = diff(f,x) by A7;
hence F/.x = G/.x by A7,A8,A9;
end;
hence thesis by A7,A8,PARTFUN2:1;
end;
end;
theorem
for X be Subset of REAL m,
f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1 st
<>*f = g & X c= dom f & f is_differentiable_on X
holds g is_differentiable_on X
& for x be Element of REAL m st x in X
holds ((f`|X)/.x) = proj(1,1)*((g`|X)/.x)
proof
let X be Subset of REAL m;
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1;
assume A1: <>*f = g & X c= dom f & f is_differentiable_on X;
hence g is_differentiable_on X by Th53;
A2: dom f = dom <>*f by Th3;
let x be Element of REAL m;
assume A3: x in X; then
(f`|X)/.x = diff(f,x) by A1,Def4;
hence thesis by A2,A1,A3,Def1;
end;
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;
let 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:def 1; 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;
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;
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;
definition
let m be non zero Element of NAT;
let Z be set;
let i be Nat;
let f be PartFunc of REAL m,REAL;
pred f is_partial_differentiable_on Z,i means
Z c=dom f & for x be Element of REAL m st x in Z
holds f|Z is_partial_differentiable_in x,i;
end;
definition
let m be non zero Element of NAT;
let Z be set;
let i be Nat;
let f be PartFunc of REAL m,REAL;
assume A1:f is_partial_differentiable_on Z,i;
func f `partial|(Z,i) -> PartFunc of REAL m,REAL means :Def6:
dom it = Z
& for x be Element of REAL m st x in Z holds it/.x = partdiff(f,x,i);
existence
proof
deffunc F(Element of REAL m) = In(partdiff(f,$1,i),REAL);
defpred P[Element of REAL m] means $1 in Z;
consider F being PartFunc of REAL m,REAL such that
A2: (for x be Element of REAL m holds x in dom F iff P[x])
& for x be Element of REAL m st x in dom F holds F.x = F(x) from SEQ_1:sch 3;
take F;
now
A3: Z is Subset of REAL m by A1,XBOOLE_1:1;
let y be object;
assume y in Z;
hence y in dom F by A2,A3;
end; then
A4:Z c= dom F;
dom F c= Z by A2;
hence dom F = Z by A4,XBOOLE_0:def 10;
hereby let x be Element of REAL m;
assume A5: x in Z; then
F.x = F(x) by A2;
hence F/.x = partdiff(f,x,i) by A5,A2,PARTFUN1:def 6;
end;
end;
uniqueness
proof
let F,G be PartFunc of REAL m,REAL;
assume that
A6: dom F = Z
& for x be Element of REAL m st x in Z holds F/.x = partdiff(f,x,i) and
A7: dom G = Z
& for x be Element of REAL m st x in Z holds G/.x = partdiff(f,x,i);
now let x be Element of REAL m;
assume A8: x in dom F; then
F/.x = partdiff(f,x,i) by A6;
hence F/.x=G/.x by A6,A7,A8;
end;
hence thesis by A6,A7,PARTFUN2:1;
end;
end;
theorem Th60:
for X be Subset of REAL m, f be PartFunc of REAL m,REAL, i being Nat st
X is open & 1 <= i & i <= m holds
( f is_partial_differentiable_on X,i
iff
X c=dom f &
for x be Element of REAL m st x in X holds
f is_partial_differentiable_in x,i )
proof
let X be Subset of REAL m, f be PartFunc of REAL m,REAL, i be Nat;
assume that
A1: X is open and
A2: 1 <= i & i <= m;
thus f is_partial_differentiable_on X,i implies X c=dom f &
for x be Element of REAL m st x in X holds
f is_partial_differentiable_in x,i
proof
assume A3: f is_partial_differentiable_on X,i;
hence A4: X c=dom f;
let nx0 be Element of REAL m;
reconsider x0=proj(i,m).nx0 as Element of REAL;
assume A5: nx0 in X; then
f|X is_partial_differentiable_in nx0,i by A3; then
consider N0 being Neighbourhood of x0 such that
A6: N0 c= dom((f|X)*reproj(i,nx0)) and
A7: ex L be LinearFunc,R be RestFunc st
for x be Real st x in N0 holds
((f|X)*reproj(i,nx0)).x-((f|X)*reproj(i,nx0)).x0
= L.( x-x0)+R.(x-x0) by FDIFF_1:def 4;
consider L be LinearFunc,R be RestFunc such that
A8: for x be Real st x in N0 holds
((f|X)*reproj(i,nx0)).x - ((f|X)*reproj(i,nx0)).x0
= L.(x-x0) + R.(x-x0) by A7;
consider N1 being Neighbourhood of x0 such that
A9: for x be Element of REAL st x in N1 holds
(reproj(i,nx0)).x in X by A1,A2,A5,Lm2;
A10:now let x be Element of REAL;
assume x in N1; then
(reproj(i,nx0)).x in X by A9; then
(reproj(i,nx0)).x in dom f /\ X by A4,XBOOLE_0:def 4;
hence (reproj(i,nx0)).x in dom(f|X) by RELAT_1:61;
end;
consider N being Neighbourhood of x0 such that
A11: N c= N0 & N c= N1 by RCOMP_1:17;
(f|X)*reproj(i,nx0) c= f*reproj(i,nx0) by RELAT_1:29,59; then
dom((f|X)*reproj(i,nx0)) c= dom(f*reproj(i,nx0)) by RELAT_1:11; then
A13:N c= dom(f*reproj(i,nx0)) by A6,A11;
now let xx be Real;
reconsider x=xx as Element of REAL by XREAL_0:def 1;
assume A14: xx in N; then
(reproj(i,nx0)).x in dom(f|X) by A10,A11; then
A15: (reproj(i,nx0)).x in dom f & (reproj(i,nx0)).x in X by RELAT_1:57;
(reproj(i,nx0)).x0 in dom(f|X) by A10,RCOMP_1:16; then
A16: (reproj(i,nx0)).x0 in dom f & (reproj(i,nx0)).x0 in X by RELAT_1:57;
A17: dom(reproj(i,nx0)) = REAL by FUNCT_2:def 1; then
A18: ((f|X)*reproj(i,nx0)).x =(f|X).(reproj(i,nx0).x) by FUNCT_1:13
.= f.(reproj(i,nx0).x) by A15,FUNCT_1:49
.= (f*reproj(i,nx0)).x by A17,FUNCT_1:13;
((f|X)*reproj(i,nx0)).x0 =(f|X).(reproj(i,nx0).x0) by A17,FUNCT_1:13
.= f.(reproj(i,nx0).x0) by A16,FUNCT_1:49
.= (f*reproj(i,nx0)).x0 by A17,FUNCT_1:13;
hence (f*reproj(i,nx0)).xx-(f*reproj(i,nx0)).x0 =L.(xx-x0)+R.(xx-x0)
by A8,A14,A11,A18;
end;
hence f is_partial_differentiable_in nx0,i by A13,FDIFF_1:def 4;
end;
assume that
A19:X c=dom f and
A20:for nx be Element of REAL m st nx in X holds
f is_partial_differentiable_in nx,i;
thus X c=dom f by A19;
now let nx0 be Element of REAL m;
assume A21: nx0 in X; then
A22:f is_partial_differentiable_in nx0,i by A20;
reconsider x0=proj(i,m).nx0 as Element of REAL;
consider N0 being Neighbourhood of x0 such that
N0 c= dom (f*reproj(i,nx0)) and
A23: ex L be LinearFunc,R be RestFunc st
for x be Real st x in N0 holds
(f*reproj(i,nx0)).x-(f*reproj(i,nx0)).x0
= L.(x-x0)+R.(x-x0) by FDIFF_1:def 4,A22;
consider N1 being Neighbourhood of x0 such that
A24: for x be Element of REAL st x in N1 holds
(reproj(i,nx0)).x in X by A1,A2,A21,Lm2;
A25:now let x be Element of REAL;
assume x in N1; then
(reproj(i,nx0)).x in X by A24; then
(reproj(i,nx0)).x in dom f /\ X by A19,XBOOLE_0:def 4;
hence (reproj(i,nx0)).x in dom(f|X) by RELAT_1:61;
end;
A26:N1 c= dom((f|X)*reproj(i,nx0))
proof
let z be object;
assume A27:z in N1; then
A28: z in REAL;
reconsider x=z as Element of REAL by A27;
A29: (reproj(i,nx0)).x in dom(f|X) by A27,A25;
z in dom reproj(i,nx0) by A28,FUNCT_2:def 1;
hence z in dom((f|X)*reproj(i,nx0)) by A29,FUNCT_1:11;
end;
consider N being Neighbourhood of x0 such that
A30: N c= N0 & N c= N1 by RCOMP_1:17;
A31:N c= dom((f|X)*reproj(i,nx0)) by A30,A26;
consider L be LinearFunc,R be RestFunc such that
A32: for x be Real st x in N0 holds
(f*reproj(i,nx0)).x-(f*reproj(i,nx0)).x0=L.(x-x0)+R.(x-x0) by A23;
now let xx be Real;
assume A33: xx in N;
reconsider x=xx as Element of REAL by XREAL_0:def 1;
A34: dom reproj(i,nx0) = REAL by FUNCT_2:def 1;
(reproj(i,nx0)).x in dom(f|X) by A25,A33,A30; then
A35: (reproj(i,nx0)).x in dom f /\ X by RELAT_1:61;
(reproj(i,nx0)).x0 in dom(f|X) by A25,RCOMP_1:16; then
A36: (reproj(i,nx0)).x0 in dom f /\ X by RELAT_1:61;
A37: ((f|X)*reproj(i,nx0)).x = (f|X).(reproj(i,nx0)/.x) by A34,FUNCT_1:13
.= f.(reproj(i,nx0).x) by A35,FUNCT_1:48
.= (f*reproj(i,nx0)).x by A34,FUNCT_1:13;
((f|X)*reproj(i,nx0)).x0 = (f|X).(reproj(i,nx0).x0) by A34,FUNCT_1:13
.= f.(reproj(i,nx0).x0) by A36,FUNCT_1:48
.= (f*reproj(i,nx0)).x0 by A34,FUNCT_1:13;
hence ((f|X)*reproj(i,nx0)).xx -((f|X)*reproj(i,nx0)).x0
= L.(xx-x0)+R.(xx-x0) by A37,A33,A32,A30;
end;
hence (f|X) is_partial_differentiable_in nx0,i by A31,FDIFF_1:def 4;
end;
hence thesis;
end;
theorem Th61:
for X be Subset of REAL m,
f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1, i being Nat
st
<>*f = g & X is open & 1 <= i & i <= m holds
f is_partial_differentiable_on X,i iff g is_partial_differentiable_on X,i
proof
let X be Subset of REAL m;
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1,
i be Nat;
assume A1: <>*f = g & X is open & 1 <= i & i <= m;
hereby assume A2: f is_partial_differentiable_on X,i; then
A3: X c= dom g by Th3,A1;
now let x be Element of REAL m;
assume x in X; then
f is_partial_differentiable_in x,i by A2,A1,Th60;
hence g is_partial_differentiable_in x,i by A1,PDIFF_1:18;
end;
hence g is_partial_differentiable_on X,i by A3,A1,PDIFF_7:34;
end;
hereby assume
A4: g is_partial_differentiable_on X,i; then
A5: X c= dom f by Th3,A1;
now let x be Element of REAL m;
assume x in X; then
g is_partial_differentiable_in x,i by A4,A1,PDIFF_7:34;
hence f is_partial_differentiable_in x,i by A1,PDIFF_1:18;
end;
hence f is_partial_differentiable_on X,i by A1,Th60,A5;
end;
end;
theorem Th62:
for X be Subset of REAL m,
f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1, i being Nat
st
<>*f = g & X is open & 1<=i & i<=m & f is_partial_differentiable_on X,i holds
f`partial|(X,i) is_continuous_on X iff g`partial|(X,i) is_continuous_on X
proof
let X be Subset of REAL m;
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1,
i be Nat;
assume A1: <>*f = g & X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i; then
A2:g is_partial_differentiable_on X,i by Th61;
set ff= f`partial|(X,i);
set gg= g`partial|(X,i);
A3:
for x,y be Element of REAL m st x in X & y in X holds
|. (f`partial|(X,i))/.x - (f`partial|(X,i))/.y .|
= |. (g`partial|(X,i))/.x - (g`partial|(X,i))/.y .|
proof
let x,y be Element of REAL m;
assume A4: x in X & y in X; then
A5: (f`partial|(X,i))/.x = partdiff(f,x,i) &
(f`partial|(X,i))/.y = partdiff(f,y,i) by A1,Def6;
A6:(g`partial|(X,i))/.x = partdiff(g,x,i) &
(g`partial|(X,i))/.y = partdiff(g,y,i) by A2,A4,PDIFF_7:def 5;
g is_partial_differentiable_in x,i &
g is_partial_differentiable_in y,i by A2,A4,A1,PDIFF_7:34; then
partdiff(g,x,i) = <*partdiff(f,x,i)*> &
partdiff(g,y,i) = <*partdiff(f,y,i)*> by A1,PDIFF_1:19; then
(g`partial|(X,i))/.x - (g`partial|(X,i))/.y
= <* (f`partial|(X,i))/.x - (f`partial|(X,i))/.y *> by A5,A6,RVSUM_1:29;
hence thesis by Lm1;
end;
A7:dom gg = X by A2,PDIFF_7:def 5;
A8:dom ff = X by Def6,A1;
hereby assume A9: f`partial|(X,i) is_continuous_on X;
now let x0 be Element of REAL m, r be Real;
assume A10: x0 in X & 0*f = g holds
|. diff(f,x1).v - diff(f,x0).v .| = |. diff(g,x1).v - diff(g,x0).v .|
proof
let f be PartFunc of REAL m,REAL, g be PartFunc of REAL m,REAL 1,
x1,x0,v be Element of REAL m;
assume A1: <>*f = g;
set I=proj(1,1);
reconsider w0 = diff(g,x0).v, w1 = diff(g,x1).v
as Point of REAL-NS 1 by REAL_NS1:def 4;
dom diff(g,x1) = REAL m & dom diff(g,x0) = REAL m by FUNCT_2:def 1; then
diff(f,x0).v = I.w0 & diff(f,x1).v = I.w1 by A1,FUNCT_1:13; then
diff(f,x1).v - diff(f,x0).v = I.(w1-w0) by PDIFF_1:4; then
|. diff(f,x1).v - diff(f,x0).v .| = ||. w1-w0 .|| by PDIFF_1:4;
hence thesis by REAL_NS1:1,5;
end;
theorem
for X be Subset of REAL m, f be PartFunc of REAL m,REAL 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;
set g = <>*f;
assume A1: X is open & X c= dom f; then
A2:X c= dom g by Th3;
hereby assume
A3: 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;
A4: for i be Nat st 1 <= i & i <= m holds
g is_partial_differentiable_on X,i &
g`partial|(X,i) is_continuous_on X
proof
let i be Nat;
assume A5: 1 <= i & i <= m; then
f is_partial_differentiable_on X,i
& f`partial|(X,i) is_continuous_on X by A3;
hence g is_partial_differentiable_on X,i
& g`partial|(X,i) is_continuous_on X by A1,Th61,Th62,A5;
end; then
g is_differentiable_on X by Th26,A1,A2;
hence f is_differentiable_on X by Th53;
thus 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 x0 be Element of REAL m,r be Real;
assume x0 in X & 0 < r; then
consider s be Real such that
A6: 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(g,x1).v - diff(g,x0).v.| <= r * |.v.| by A4,Th26,A1,A2;
take s;
thus 0 < s by A6;
let x1 be Element of REAL m;
assume A7: x1 in X & |. x1- x0 .| < s;
let v be Element of REAL m;
|. diff(g,x1).v - diff(g,x0).v.| <= r * |.v.| by A7,A6;
hence |. diff(f,x1).v - diff(f,x0).v.| <= r * |.v.| by Lm4;
end;
end;
now assume
A8: 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
A9: g is_differentiable_on X by A1,Th53;
A10: 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(g,x1).v - diff(g,x0).v.| <= r * |.v.|
proof
let x0 be Element of REAL m,r be Real;
assume x0 in X & 0 < r; then
consider s be Real such that
A11: 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 A8;
take s;
thus 0 < s by A11;
let x1 be Element of REAL m;
assume A12: x1 in X & |. x1- x0 .| < s;
let v be Element of REAL m;
|. diff(f,x1).v - diff(f,x0).v.| <= r * |.v.| by A12,A11;
hence |. diff(g,x1).v - diff(g,x0).v.| <= r * |.v.| by Lm4;
end;
thus 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
proof
let i be Nat;
assume A13: 1 <= i & i <= m; then
A14: g is_partial_differentiable_on X,i &
g`partial|(X,i) is_continuous_on X by A10,Th26,A2,A1,A9;
hence f is_partial_differentiable_on X,i by A13,Th61,A1;
hence f`partial|(X,i) is_continuous_on X by A13,A14,Th62,A1;
end;
end;
hence thesis;
end;
Lm5:
for f,g be PartFunc of REAL i,REAL, x be Element of REAL i
holds (f*reproj(k,x))(#)(g*reproj(k,x)) = (f(#)g)*reproj(k,x)
proof
let f1,f2 be PartFunc of REAL i,REAL, x be Element of REAL i;
A1:dom(reproj(k,x))=REAL by FUNCT_2:def 1;
A2:dom(f1(#)f2) = dom f1 /\ dom f2 by VALUED_1:def 4;
for s be Element of REAL holds s in dom((f1(#)f2)*reproj(k,x))
iff s in dom((f1*reproj(k,x))(#)(f2*reproj(k,x)))
proof
let s be Element of REAL;
s in dom((f1(#)f2)*reproj(k,x))
iff reproj(k,x).s in dom f1 /\ dom f2 by A2,A1,FUNCT_1:11; then
s in dom((f1(#)f2)*reproj(k,x))
iff reproj(k,x).s in dom f1 & reproj(k,x).s in dom f2
by XBOOLE_0:def 4; then
s in dom((f1(#)f2)*reproj(k,x))
iff s in dom(f1*reproj(k,x)) & s in dom(f2*reproj(k,x))
by A1,FUNCT_1:11; then
s in dom((f1(#)f2)*reproj(k,x))
iff s in dom(f1*reproj(k,x)) /\ dom(f2*reproj(k,x)) by XBOOLE_0:def 4;
hence thesis by VALUED_1:def 4;
end; then
for s be object holds s in dom((f1(#)f2)*reproj(k,x))
iff s in dom((f1*reproj(k,x))(#)(f2*reproj(k,x))); then
A3:dom((f1(#)f2)*reproj(k,x))
= dom((f1*reproj(k,x))(#)(f2*reproj(k,x))) by TARSKI:2;
for z being Element of REAL st z in dom((f1(#)f2)*reproj(k,x)) holds
((f1(#)f2)*reproj(k,x)).z = ((f1*reproj(k,x))(#)(f2*reproj(k,x))).z
proof
let z be Element of REAL;
assume
A4: z in dom((f1(#)f2)*reproj(k,x)); then
reproj(k,x).z in dom f1 /\ dom f2 by A2,FUNCT_1:11; then
reproj(k,x).z in dom f1 & reproj(k,x).z in dom f2 by XBOOLE_0:def 4; then
z in dom(f1*reproj(k,x)) & z in dom(f2*reproj(k,x)) by A1,FUNCT_1:11; then
A5:f1.(reproj(k,x).z) =(f1*reproj(k,x)).z
& f2.(reproj(k,x).z) =(f2*reproj(k,x)).z by FUNCT_1:12;
thus ((f1(#)f2)*reproj(k,x)).z
= (f1(#)f2).(reproj(k,x).z) by A4,FUNCT_1:12
.= f1.(reproj(k,x).z) * f2.(reproj(k,x).z) by VALUED_1:5
.=((f1*reproj(k,x))(#)(f2*reproj(k,x))).z
by A3,A4,A5,VALUED_1:def 4;
end;
hence thesis by A3,PARTFUN1:5;
end;
theorem Th64:
for f,g be PartFunc of REAL m,REAL, x be Element of REAL m
st f is_partial_differentiable_in x,i
& g is_partial_differentiable_in x,i
holds
f(#)g is_partial_differentiable_in x,i
& partdiff(f(#)g,x,i) = partdiff(f,x,i)*(g.x) +(f.x)*partdiff(g,x,i)
proof
let f,g be PartFunc of REAL m,REAL, x be Element of REAL m;
assume a1: f is_partial_differentiable_in x,i
& g is_partial_differentiable_in x,i;
set y=proj(i,m).x;
dom(reproj(i,x))=REAL by FUNCT_2:def 1; then
A2:(f*reproj(i,x)).y = f.(reproj(i,x).y) &
(g*reproj(i,x)).y = g.(reproj(i,x).y) by FUNCT_1:13; then
A3:(f*reproj(i,x)).y = f.x by Th12;
(f*reproj(i,x))(#)(g*reproj(i,x)) = (f(#)g)*reproj(i,x) by Lm5; then
(f(#)g)*reproj(i,x) is_differentiable_in proj(i,m).x by a1,FDIFF_1:16;
hence (f(#)g) is_partial_differentiable_in x,i;
thus partdiff((f(#)g),x,i)
= diff((f*reproj(i,x))(#)(g*reproj(i,x)),y) by Lm5
.= ((g*reproj(i,x)).y)*partdiff(f,x,i)
+ ((f*reproj(i,x)).y)*diff((g*reproj(i,x)),y) by a1,FDIFF_1:16
.= partdiff(f,x,i)*(g.x) +(f.x)*partdiff(g,x,i) by A3,A2,Th12;
end;
theorem Th65:
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL st
X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i & g is_partial_differentiable_on X,i
holds
(f+g) is_partial_differentiable_on X,i
& (f+g)`partial|(X,i) = f`partial|(X,i) + g`partial|(X,i)
& for x be Element of REAL m st x in X holds
(f+g)`partial|(X,i)/.x = partdiff(f,x,i) + partdiff(g,x,i)
proof
let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL;
assume A1: X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i & g is_partial_differentiable_on X,i;
then
A3:dom(f`partial|(X,i)) = X & dom(g`partial|(X,i)) = X by Def6;
dom (f+g) = dom f /\ dom g by VALUED_1:def 1; 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_partial_differentiable_in x,i &
g is_partial_differentiable_in x,i by A1,Th60;
hence f+g is_partial_differentiable_in x,i
& partdiff(f+g,x,i) = partdiff(f,x,i) + partdiff(g,x,i) by PDIFF_1:29;
end; then
A6:for x be Element of REAL m st x in X
holds f+g is_partial_differentiable_in x,i; then
A7:(f+g) is_partial_differentiable_on X,i by A4,Th60,A1; then
A8:dom ((f+g)`partial|(X,i)) = X by Def6;
A9:now let x be Element of REAL m;
assume A10:x in X; then
((f+g)`partial|(X,i))/.x = partdiff(f+g,x,i) by A7,Def6;
hence ((f+g)`partial|(X,i))/.x = partdiff(f,x,i) + partdiff(g,x,i)
by A5,A10;
end;
A11:
dom ((f`partial|(X,i)) + (g`partial|(X,i)))
= dom (f`partial|(X,i)) /\ dom (g`partial|(X,i)) by VALUED_1:def 1;
now let x be Element of REAL m;
assume A12: x in X;
thus ((f+g)`partial|(X,i)).x
= ((f+g)`partial|(X,i))/.x by A12,A8,PARTFUN1:def 6
.= partdiff(f,x,i) + partdiff(g,x,i) by A9,A12
.= ((f`partial|(X,i))/.x) + partdiff(g,x,i) by A12,Def6,A1
.= ((f`partial|(X,i))/.x) + ((g`partial|(X,i))/.x) by A12,Def6,A1
.= ((f`partial|(X,i)).x) + ((g`partial|(X,i))/.x) by A12,A3,PARTFUN1:def 6
.= ((f`partial|(X,i)).x) + ((g`partial|(X,i)).x) by A12,A3,PARTFUN1:def 6
.= ((f`partial|(X,i))+(g`partial|(X,i))).x by A12,A11,A3,VALUED_1:def 1;
end;
hence thesis by A6,A4,Th60,A1,A8,A9,A11,A3,PARTFUN1:5;
end;
theorem Th66:
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL st
X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i
& g is_partial_differentiable_on X,i
holds
f-g is_partial_differentiable_on X,i
& (f-g)`partial|(X,i) = f`partial|(X,i) - g`partial|(X,i)
& for x be Element of REAL m st x in X holds
(f-g)`partial|(X,i)/.x = partdiff(f,x,i) - partdiff(g,x,i)
proof
let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL;
assume A1: X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i & g is_partial_differentiable_on X,i;
A3:dom (f`partial|(X,i)) = X & dom (g`partial|(X,i)) = X by Def6,A1;
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_partial_differentiable_in x,i & g is_partial_differentiable_in x,i
by A1,Th60;
hence f-g is_partial_differentiable_in x,i
& partdiff(f-g,x,i) = partdiff(f,x,i) - partdiff(g,x,i) by PDIFF_1:31;
end; then
A6:for x be Element of REAL m st x in X
holds f-g is_partial_differentiable_in x,i; then
A7:f-g is_partial_differentiable_on X,i by A4,Th60,A1; then
A8:dom ((f-g)`partial|(X,i)) = X by Def6;
A9:
now let x be Element of REAL m;
assume A10:x in X; then
((f-g)`partial|(X,i))/.x = partdiff((f-g),x,i) by A7,Def6;
hence ((f-g)`partial|(X,i))/.x = partdiff(f,x,i) - partdiff(g,x,i)
by A5,A10;
end;
A11:dom ((f`partial|(X,i)) - (g`partial|(X,i)) )
= dom (f`partial|(X,i)) /\ dom (g`partial|(X,i)) by VALUED_1:12;
now let x be Element of REAL m;
assume A12: x in X;
hence ((f-g)`partial|(X,i)).x
= ((f-g)`partial|(X,i))/.x by A8,PARTFUN1:def 6
.= partdiff(f,x,i) - partdiff(g,x,i) by A9,A12
.= (f`partial|(X,i))/.x - partdiff(g,x,i) by A12,Def6,A1
.= (f`partial|(X,i))/.x - (g`partial|(X,i))/.x by A12,Def6,A1
.= (f`partial|(X,i)).x - (g`partial|(X,i))/.x by A12,A3,PARTFUN1:def 6
.= (f`partial|(X,i)).x - (g`partial|(X,i)).x by A12,A3,PARTFUN1:def 6
.= ( f`partial|(X,i) - g`partial|(X,i) ).x by A12,A11,A3,VALUED_1:13;
end;
hence thesis by A8,A11,A3,A6,A9,A4,Th60,A1,PARTFUN1:5;
end;
theorem Th67:
for X be Subset of REAL m, r be Real, f be PartFunc of REAL m,REAL st
X is open & 1 <= i & i <= m & f is_partial_differentiable_on X,i
holds
r(#)f is_partial_differentiable_on X,i
& (r(#)f) `partial|(X,i) = r(#)(f`partial|(X,i))
& for x be Element of REAL m st x in X holds
(r(#)f)`partial|(X,i)/.x = r*partdiff(f,x,i)
proof
let X be Subset of REAL m, r be Real, f be PartFunc of REAL m,REAL;
assume A1: X is open & 1 <= i & i <= m & f is_partial_differentiable_on X,i;
A2:dom (f`partial|(X,i)) = X by Def6,A1;
A3:X c= dom (r(#)f) by A1,VALUED_1:def 5;
A4:
now let x be Element of REAL m;
assume x in X; then
f is_partial_differentiable_in x,i by A1,Th60;
hence r(#)f is_partial_differentiable_in x,i
& partdiff(r(#)f,x,i) = r*partdiff(f,x,i) by PDIFF_1:33;
end; then
A5:for x be Element of REAL m st x in X
holds r(#)f is_partial_differentiable_in x,i; then
A6:r(#)f is_partial_differentiable_on X,i by A3,Th60,A1; then
A7:dom ((r(#)f)`partial|(X,i)) = X by Def6;
A8:
now let x be Element of REAL m;
assume A9:x in X; then
((r(#)f)`partial|(X,i))/.x = partdiff((r(#)f),x,i) by A6,Def6;
hence ((r(#)f)`partial|(X,i))/.x = r*partdiff(f,x,i) by A4,A9;
end;
dom (r(#)(f`partial|(X,i))) = dom (f`partial|(X,i)) by VALUED_1:def 5; then
A10:dom (r(#)(f`partial|(X,i))) = X by Def6,A1;
now let x be Element of REAL m;
assume A11: x in X;
hence ((r(#)f)`partial|(X,i)).x
= ((r(#)f)`partial|(X,i))/.x by A7,PARTFUN1:def 6
.= r*partdiff(f,x,i) by A8,A11
.= r*((f`partial|(X,i))/.x) by A11,Def6,A1
.= r*((f`partial|(X,i)).x) by A11,A2,PARTFUN1:def 6
.= (r(#)(f`partial|(X,i))).x by A11,A10,VALUED_1:def 5;
end;
hence thesis by A7,A10,A5,A8,A3,Th60,A1,PARTFUN1:5;
end;
theorem Th68:
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL st
X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i & g is_partial_differentiable_on X,i
holds
f(#)g is_partial_differentiable_on X,i
& (f(#)g)`partial|(X,i) =(f`partial|(X,i))(#)g + f(#)(g`partial|(X,i))
& for x be Element of REAL m st x in X holds
(f(#)g)`partial|(X,i)/.x = partdiff(f,x,i)*(g.x) + (f.x)* partdiff(g,x,i)
proof
let X be Subset of REAL m, f,g be PartFunc of REAL m,REAL;
assume A1: X is open & 1 <= i & i <= m
& f is_partial_differentiable_on X,i & g is_partial_differentiable_on X,i;
A2:X c=dom f & X c=dom g by A1;
A3:dom (f`partial|(X,i)) = X & dom (g`partial|(X,i)) = X by Def6,A1;
dom (f(#)g) = dom f /\ dom g by VALUED_1:def 4; 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_partial_differentiable_in x,i &
g is_partial_differentiable_in x,i by A1,Th60;
hence f(#)g is_partial_differentiable_in x,i
& partdiff(f(#)g,x,i) = partdiff(f,x,i)*(g.x) + (f.x)* partdiff(g,x,i)
by Th64;
end; then
A6:for x be Element of REAL m st x in X
holds f(#)g is_partial_differentiable_in x,i; then
A7:f(#)g is_partial_differentiable_on X,i by A4,Th60,A1; then
A8:dom ((f(#)g)`partial|(X,i)) = X by Def6;
A9:
now let x be Element of REAL m;
assume A10:x in X; then
((f(#)g) `partial|(X,i))/.x = partdiff((f(#)g),x,i) by A7,Def6;
hence ((f(#)g)`partial|(X,i))/.x
= partdiff(f,x,i)*(g.x) + (f.x)*partdiff(g,x,i) by A5,A10;
end;
dom (f`partial|(X,i)(#)g) = dom (f`partial|(X,i)) /\ dom g &
dom (f(#)(g`partial|(X,i))) = dom f /\ dom (g`partial|(X,i))
by VALUED_1:def 4; then
A11:
dom (f`partial|(X,i)(#)g) = X &
dom (f(#)(g`partial|(X,i))) = X by A3,A2,XBOOLE_1:28;
A12:dom ((f`partial|(X,i))(#)g + f(#)(g`partial|(X,i)))
= dom ((f`partial|(X,i))(#)g) /\ dom(f(#)(g`partial|(X,i)))
by VALUED_1:def 1;
now let x be Element of REAL m;
assume A13: x in X;
thus ((f(#)g)`partial|(X,i)).x
= ((f(#)g)`partial|(X,i))/.x by A13,A8,PARTFUN1:def 6
.= partdiff(f,x,i)*(g.x) + (f.x)*partdiff(g,x,i) by A9,A13
.= ((f`partial|(X,i))/.x)*(g.x) + (f.x)*partdiff(g,x,i)
by A13,Def6,A1
.= ((f`partial|(X,i))/.x)*(g.x) + (f.x)*((g`partial|(X,i))/.x)
by A13,Def6,A1
.= ((f`partial|(X,i)).x)*(g.x) + (f.x)*((g`partial|(X,i))/.x)
by A13,A3,PARTFUN1:def 6
.= ((f`partial|(X,i)).x)*(g.x) + (f.x)*((g`partial|(X,i)).x)
by A13,A3,PARTFUN1:def 6
.= ((f`partial|(X,i))(#)g).x + (f.x)*((g`partial|(X,i)).x)
by VALUED_1:5
.= ((f`partial|(X,i))(#)g).x + (f(#)(g`partial|(X,i))).x
by VALUED_1:5
.= ( (f`partial|(X,i)(#)g) + f(#)(g`partial|(X,i)) ).x
by A13,A12,A11,VALUED_1:def 1;
end;
hence thesis by A6,A9,A4,Th60,A1,A8,A11,A12,PARTFUN1:5;
end;
begin :: Higher Order Partial Differentiation
definition
let m be non zero Element of NAT, Z be set, I be FinSequence of NAT,
f be PartFunc of REAL m,REAL;
func PartDiffSeq(f,Z,I) -> Functional_Sequence of REAL m,REAL means :Def7:
it.0 = f|Z
& for i be Nat holds it.(i+1) = (it.i)`partial|(Z,I/.(i+1));
existence
proof
reconsider fZ = f|Z as Element of PFuncs(REAL m,REAL) by PARTFUN1:45;
defpred R[set,set,set] means ex k be Nat,
h being PartFunc of REAL m, REAL
st $1=k & $2 = h & $3 = h`partial|(Z,I/.(k+1));
A1:for n being Nat
for x being Element of PFuncs(REAL m,REAL)
ex y being Element of PFuncs(REAL m,REAL) st R[n,x,y]
proof
let n be Nat;
let x be Element of PFuncs (REAL m,REAL);
reconsider x9 = x as PartFunc of REAL m, REAL by PARTFUN1:46;
reconsider y = x9`partial|(Z,I/.(n+1))
as Element of PFuncs (REAL m,REAL) by PARTFUN1:45;
ex h being PartFunc of REAL m, REAL
st x = h & y = h`partial|(Z,I/.(n+1));
hence thesis;
end;
consider g be sequence of PFuncs (REAL m,REAL) such that
A2: g.0 = fZ & for n being Nat holds R[n,g.n,g.(n+1)]
from RECDEF_1:sch 2(A1);
reconsider g as Functional_Sequence of REAL m,REAL;
take g;
thus g.0 = f|Z by A2;
let i be Nat;
R[i,g.i,g.(i+1)] by A2;
hence thesis;
end;
uniqueness
proof
let seq1,seq2 be Functional_Sequence of REAL m,REAL;
assume that
A3: seq1.0=f|Z and
A4: for n be Nat holds seq1.(n+1)
=( seq1.n )`partial|(Z,I/.(n+1)) and
A5: seq2.0=f|Z and
A6: for n be Nat holds seq2.(n+1)
=( seq2.n )`partial|(Z,I/.(n+1));
defpred P[Nat] means seq1.$1 = seq2.$1;
A7:for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume A8: P[k];
seq1.(k+1) = ( seq1.k )`partial|(Z,I/.(k+1)) by A4;
hence seq1.(k+1) = seq2.(k+1) by A6,A8;
end;
A9:P[0] by A3,A5;
for n be Nat holds P[n] from NAT_1:sch 2(A9,A7);
hence seq1 = seq2;
end;
end;
definition
let m be non zero Element of NAT;
let Z be set, I be FinSequence of NAT;
let f be PartFunc of REAL m,REAL;
pred f is_partial_differentiable_on Z,I means
for i be Element of NAT st i <= (len I)-1
holds (PartDiffSeq(f,Z,I)).i is_partial_differentiable_on Z,I/.(i+1);
end;
definition
let m be non zero Element of NAT;
let Z be set, I be FinSequence of NAT;
let f be PartFunc of REAL m,REAL;
func f`partial|(Z,I) -> PartFunc of REAL m,REAL equals
(PartDiffSeq(f,Z,I)).(len I);
correctness;
end;
Lm6:
for I be non empty FinSequence of NAT, X be set
st 1 <=i & i <= len I & rng I c= X holds I/.i in X
proof
let I be non empty FinSequence of NAT, X be set;
assume A1: 1 <=i & i <= len I & rng I c= X; then
A2:i in dom I by FINSEQ_3:25; then
I.i in rng I by FUNCT_1:3; then
I/.i in rng I by A2,PARTFUN1:def 6;
hence I/.i in X by A1;
end;
theorem Th69:
for m be non zero Element of NAT, Z be Subset of REAL m,
i be Nat, f be PartFunc of REAL m,REAL, x be Element of REAL m st
Z is open & Z c= dom f & 1 <= i & i <= m & x in Z
& f is_partial_differentiable_in x,i
holds
(f|Z) is_partial_differentiable_in x,i
& partdiff(f,x,i) = partdiff((f|Z),x,i)
proof
let m be non zero Element of NAT, X be Subset of REAL m,
i be Nat, f be PartFunc of REAL m,REAL, nx0 be Element of REAL m;
assume that
A1:X is open & X c= dom f & 1 <= i & i <= m & nx0 in X
& f is_partial_differentiable_in nx0,i;
set x0=proj(i,m).nx0;
consider N0 being Neighbourhood of x0 such that
A2: N0 c= dom (f*reproj(i,nx0))
& ex L be LinearFunc,R be RestFunc st
for x be Real st x in N0 holds
(f*reproj(i,nx0)).x-(f*reproj(i,nx0)).x0 = L.(x-x0)+R.(x-x0)
by A1,FDIFF_1:def 4;
consider N1 being Neighbourhood of x0 such that
A3: for x be Element of REAL st x in N1 holds
(reproj(i,nx0)).x in X by A1,Lm2;
A4:now let x be Element of REAL;
assume x in N1; then
(reproj(i,nx0)).x in X by A3; then
(reproj(i,nx0)).x in dom f /\ X by A1,XBOOLE_0:def 4;
hence (reproj(i,nx0)).x in dom(f|X) by RELAT_1:61;
end;
consider N being Neighbourhood of x0 such that
A5: N c= N0 & N c= N1 by RCOMP_1:17;
N1 c= dom((f|X)*reproj(i,nx0))
proof
let z be object;
assume A6:z in N1; then
reconsider x=z as Element of REAL;
A7: (reproj(i,nx0)).x in dom(f|X) by A6,A4;
z in REAL by A6; then
z in dom reproj(i,nx0) by FUNCT_2:def 1;
hence z in dom((f|X)*reproj(i,nx0)) by A7,FUNCT_1:11;
end; then
A8:N c= dom((f|X)*reproj(i,nx0)) by A5;
consider L be LinearFunc,R be RestFunc such that
A9: for x be Real st x in N0 holds
(f*reproj(i,nx0)).x-(f*reproj(i,nx0)).x0=L.(x-x0)+R.(x-x0) by A2;
A10:
now let xx be Real;
assume A11: xx in N;
reconsider x=xx as Element of REAL by XREAL_0:def 1;
A12:dom reproj(i,nx0) = REAL by FUNCT_2:def 1;
A13:(reproj(i,nx0)).x0 in dom(f|X) by A4,RCOMP_1:16;
A14:((f|X)*reproj(i,nx0)).x = (f|X).(reproj(i,nx0)/.x) by A12,FUNCT_1:13
.= f.(reproj(i,nx0).x) by A4,A11,A5,FUNCT_1:47
.= (f*reproj(i,nx0)).x by A12,FUNCT_1:13;
((f|X)*reproj(i,nx0)).x0 = (f|X).(reproj(i,nx0).x0) by A12,FUNCT_1:13
.= f.(reproj(i,nx0).x0) by A13,FUNCT_1:47
.= (f*reproj(i,nx0)).x0 by A12,FUNCT_1:13;
hence ((f|X)*reproj(i,nx0)).xx -((f|X)*reproj(i,nx0)).x0
= L.(xx-x0)+R.(xx-x0) by A14,A11,A9,A5;
end;
hence (f|X) is_partial_differentiable_in nx0,i by A8,FDIFF_1:def 4;
(f|X)*reproj(i,nx0) is_differentiable_in x0 by A8,A10,FDIFF_1:def 4; then
partdiff((f|X),nx0,i) = L.1 by A10,A8,FDIFF_1:def 5;
hence thesis by A2,A9,A1,FDIFF_1:def 5;
end;
theorem Th70:
for m be non zero Element of NAT, Z be set, i be Nat,
f be PartFunc of REAL m,REAL holds
f is_partial_differentiable_on Z,i iff f|Z is_partial_differentiable_on Z,i
proof
let m be non zero Element of NAT, Z be set, i be Nat,
f be PartFunc of REAL m,REAL;
hereby assume A1: f is_partial_differentiable_on Z,i;
(f|Z) |Z = f|Z by RELAT_1:72;
hence f|Z is_partial_differentiable_on Z,i by A1,RELAT_1:62;
end;
assume A2: f|Z is_partial_differentiable_on Z,i;
dom (f|Z) c= dom f by RELAT_1:60; then
A3:Z c=dom f by A2;
(f|Z) |Z = f|Z by RELAT_1:72;
hence f is_partial_differentiable_on Z,i by A2,A3;
end;
definition let m be non zero Element of NAT, Z be set, i be Nat,
f be PartFunc of REAL m,REAL;
redefine pred f is_partial_differentiable_on Z,i means
f|Z is_partial_differentiable_on Z,i;
compatibility by Th70;
end;
theorem Th71:
for m be non zero Element of NAT, Z be Subset of REAL m, i be Nat,
f be PartFunc of REAL m,REAL st
Z is open & 1 <= i & i <= m & f is_partial_differentiable_on Z,i
holds
f`partial|(Z,i) = (f|Z)`partial|(Z,i)
proof
let m be non zero Element of NAT, Z be Subset of REAL m,
i be Nat, f be PartFunc of REAL m,REAL;
assume A1: Z is open & 1 <= i & i <= m
& f is_partial_differentiable_on Z,i; then
A2:dom(f `partial|(Z,i)) = Z by Def6;
for x be Element of REAL m st x in Z holds
(f `partial|(Z,i))/.x = partdiff((f|Z),x,i)
proof
let x be Element of REAL m;
assume A3: x in Z; then
f is_partial_differentiable_in x,i
& (f`partial|(Z,i))/.x = partdiff(f,x,i) by A1,Def6,Th60;
hence (f`partial|(Z,i))/.x = partdiff((f|Z),x,i) by A1,A3,Th69;
end;
hence thesis by A1,A2,Def6;
end;
theorem Th72:
for f be PartFunc of REAL m,REAL, I be non empty FinSequence of NAT
st f is_partial_differentiable_on Z,I
holds (f`partial|(Z,I)) |Z = f`partial|(Z,I)
proof
let f be PartFunc of REAL m,REAL, I be non empty FinSequence of NAT;
reconsider k=(len I)-1 as Element of NAT by INT_1:5,FINSEQ_1:20;
assume f is_partial_differentiable_on Z,I; then
A1:(PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1);
dom((PartDiffSeq(f,Z,I)).(k+1))
= dom (((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1))) by Def7; then
dom((PartDiffSeq(f,Z,I)).(k+1)) = Z by A1,Def6;
hence (f`partial|(Z,I)) |Z = f`partial|(Z,I) by RELAT_1:68;
end;
theorem Th73:
for f be PartFunc of REAL m,REAL, I,G be non empty FinSequence of NAT
st f is_partial_differentiable_on Z,G
holds
for n be Nat st n <= len I holds
(PartDiffSeq((f`partial|(Z,G)),Z,I)).n
= (PartDiffSeq(f,Z,(G^I))).(len G + n)
proof
let f be PartFunc of REAL m,REAL, I,G be non empty FinSequence of NAT;
assume A1:f is_partial_differentiable_on Z,G;
set g = f`partial|(Z,G);
A2:dom G c= dom (G^I) by FINSEQ_1:26;
A3:for i be Nat st i <= len G-1 holds (G^I)/.(i+1) = G/.(i+1)
proof
let i be Nat;
assume i <= len G - 1; then
1 <= i+1 & i+1 <= len G by NAT_1:11,XREAL_1:19; then
A4: i+1 in dom G by FINSEQ_3:25; then
(G^I)/.(i+1) = (G^I).(i+1) by A2,PARTFUN1:def 6; then
(G^I)/.(i+1) = G.(i+1) by A4,FINSEQ_1:def 7;
hence (G^I)/.(i+1) = G/.(i+1) by A4,PARTFUN1:def 6;
end;
A5:len (G^I) = len G + len I by FINSEQ_1:22;
A6:for i be Nat st i <= (len I)-1 holds (G^I)/.(len G + (i+1)) = I/.(i+1)
proof
let i be Nat;
assume i <= len I - 1; then
A7: i+1 <= len I by XREAL_1:19; then
A8: i+1 in dom I by NAT_1:11,FINSEQ_3:25;
1 <= len G + (i+1) by NAT_1:11,XREAL_1:38; then
len G + (i+1) in dom (G^I) by A5,A7,XREAL_1:7,FINSEQ_3:25;
hence (G^I)/.(len G + (i+1)) =(G^I).(len G + (i+1)) by PARTFUN1:def 6
.= I.(i+1) by A8,FINSEQ_1:def 7
.= I/.(i+1) by A8,PARTFUN1:def 6;
end;
defpred P0[Nat] means
$1 <= len G implies
(PartDiffSeq(f,Z,G^I)).$1 =(PartDiffSeq(f,Z,G)).$1;
A9:P0[0]
proof
assume 0 <= len G;
(PartDiffSeq(f,Z,G^I)).0 = f |Z by Def7;
hence (PartDiffSeq(f,Z,G^I)).0 = (PartDiffSeq(f,Z,G)).0 by Def7;
end;
A10: for k be Nat st P0[k] holds P0[k+1]
proof
let k be Nat;
assume A11: P0[k];
assume A12: k+1 <= len G; then
A122: k +1 -1 <= len G -1 by XREAL_1:9;
k <= k+1 by NAT_1:11; then
A13: k <= len G by A12,XXREAL_0:2;
thus (PartDiffSeq(f,Z,G^I)).(k+1)
= ((PartDiffSeq(f,Z,G^I)).k)`partial|(Z,(G^I)/.(k+1)) by Def7
.= ((PartDiffSeq(f,Z,G)).k)`partial|(Z,G/.(k+1))
by A13,A3,A11,A122
.= (PartDiffSeq(f,Z,G)).(k+1) by Def7;
end;
A14:for n be Nat holds P0[n] from NAT_1:sch 2(A9,A10);
A15:(PartDiffSeq(f,Z,G^I)).(len G) = (PartDiffSeq(f,Z,G)).(len G)
proof
reconsider j= (len G)-1 as Element of NAT by INT_1:5,FINSEQ_1:20;
a16:j <= j+1 by NAT_1:11;
thus (PartDiffSeq(f,Z,G^I)).(len G)
= ((PartDiffSeq(f,Z,G^I)).j)`partial|(Z,(G^I)/.(j+1)) by Def7
.= ((PartDiffSeq(f,Z,G)).j)`partial|(Z,(G^I)/.(j+1)) by A14,a16
.= ((PartDiffSeq(f,Z,G)).j)`partial|(Z,G/.(j+1)) by A3
.= (PartDiffSeq(f,Z,G)).(len G) by Def7;
end;
defpred P[Nat] means
$1 <= len I implies
(PartDiffSeq(g,Z,I)).$1 =(PartDiffSeq(f,Z,(G^I))).(len G + $1);
A16:
P[0]
proof
assume 0 <= len I;
(PartDiffSeq(f,Z,(G^I))).(len G + 0) = g|Z by A1,A15,Th72;
hence thesis by Def7;
end;
A17:
for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume A18: P[k];
set i = (len G) + k;
assume A19: k+1 <= len I; then
A199: k +1 -1 <= (len I) -1 by XREAL_1:9;
A20:k <= k+1 by NAT_1:11;
(G^I)/.(i+1) = (G^I)/.(len G + (k+1)); then
A21:(G^I)/.(i+1) = I/.(k+1) by A6,A199;
(PartDiffSeq(f,Z,(G^I))).(len G + (k+1))
= ((PartDiffSeq(f,Z,(G^I))).i)`partial|(Z,(G^I)/.(i+1)) by Def7;
hence thesis by A20,A19,A18,A21,Def7,XXREAL_0:2;
end;
for n be Nat holds P[ n ] from NAT_1:sch 2(A16,A17);
hence thesis;
end;
theorem Th74:
for X be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m & f is_partial_differentiable_on X,I
& g is_partial_differentiable_on X,I
holds
for i st i <= (len I) - 1 holds
(PartDiffSeq(f+g,X,I)).i is_partial_differentiable_on X,I/.(i+1)
& (PartDiffSeq(f+g,X,I)).i = PartDiffSeq(f,X,I).i + PartDiffSeq(g,X,I).i
proof
let Z be Subset of REAL m, I be non empty FinSequence of NAT;
let f,g be PartFunc of REAL m,REAL;
assume
A1: Z is open & rng I c= Seg m & f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I;
thus for i be Element of NAT st i <= (len I)-1 holds
(PartDiffSeq(f+g,Z,I)).i is_partial_differentiable_on Z,I/.(i+1)
& (PartDiffSeq(f+g,Z,I)).i = PartDiffSeq(f,Z,I).i + PartDiffSeq(g,Z,I).i
proof
defpred P[Nat] means
$1 <= (len I)-1 implies
(PartDiffSeq(f+g,Z,I)).$1 is_partial_differentiable_on Z,I/.($1+1)
& (PartDiffSeq(f+g,Z,I)).$1
= (PartDiffSeq(f,Z,I)).$1 + (PartDiffSeq(g,Z,I)).$1;
reconsider Z0=0 as Element of NAT;
A2: P[0]
proof
assume 0 <= (len I)-1; then
A3: (PartDiffSeq(f,Z,I)).Z0 is_partial_differentiable_on Z,I/.(Z0+1)
& (PartDiffSeq(g,Z,I)).Z0 is_partial_differentiable_on Z,I/.(Z0+1)
by A1;
A4: f|Z = (PartDiffSeq(f,Z,I)).Z0 &
g|Z = (PartDiffSeq(g,Z,I)).Z0
& (PartDiffSeq(f+g,Z,I)).Z0 = (f+g) |Z by Def7;
A5: f|Z + g|Z = (f+g) |Z by RFUNCT_1:44;
1 <= len I by FINSEQ_1:20; then
I/.1 in Seg m by A1,Lm6; then
1<=I/.1 & I/.1 <= m by FINSEQ_1:1;
hence thesis by A4,A5,A1,A3,Th65;
end;
A6: for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume
A7: P[k];
assume A8: k+1 <=(len I)-1;
A9: k <= k+1 by NAT_1:11; then
A10: k <= (len I)-1 by A8,XXREAL_0:2;
A11: (PartDiffSeq(f,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1)
& (PartDiffSeq(g,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1)
by A8,A1;
k+1 <= (len I)-1 + 1 by A10,XREAL_1:6; then
I/.(k+1) in Seg m by A1,Lm6,NAT_1:11; then
A12: 1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
k in NAT by ORDINAL1:def 12; then
A13:(PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1)
& (PartDiffSeq(g,Z,I)).k is_partial_differentiable_on Z,I/.(k+1)
by A9,A1,A8,XXREAL_0:2;
A14: (PartDiffSeq(f,Z,I)).(k+1)
= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1)) by Def7;
(k+1)+1 <=(len I)-1 +1 by A8,XREAL_1:6; then
I/.((k+1)+1) in Seg m by A1,Lm6,NAT_1:11; then
A15: 1 <= I/.((k+1)+1) & I/.((k+1)+1) <= m by FINSEQ_1:1;
A16: (PartDiffSeq(f+g,Z,I)).(k+1)
= ((PartDiffSeq(f,Z,I)).k + (PartDiffSeq(g,Z,I)).k)`partial|(Z,I/.(k+1))
by A9,A7,A8,Def7,XXREAL_0:2
.= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1))
+ ((PartDiffSeq(g,Z,I)).k)`partial|(Z,I/.(k+1)) by A13,A1,A12,Th65
.= (PartDiffSeq(f,Z,I)).(k+1) + (PartDiffSeq(g,Z,I)).(k+1) by A14,Def7;
hence
(PartDiffSeq(f+g,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1)
by A1,A11,A15,Th65;
thus (PartDiffSeq(f+g,Z,I)).(k+1)
= (PartDiffSeq(f,Z,I)).(k+1) + (PartDiffSeq(g,Z,I)).(k+1) by A16;
end;
for n be Nat holds P[ n ] from NAT_1:sch 2(A2,A6);
hence thesis;
end;
end;
theorem Th75:
for X be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m
& f is_partial_differentiable_on X,I
& g is_partial_differentiable_on X,I
holds
f+g is_partial_differentiable_on X,I
& (f+g)`partial|(X,I) = f`partial|(X,I) + g`partial|(X,I)
proof
let Z be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL;
assume A1: Z is open & rng I c= Seg m
& f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I;
hence f+g is_partial_differentiable_on Z,I by Th74;
reconsider k=(len I)-1 as Element of NAT by FINSEQ_1:20,INT_1:5;
A2:(PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1) &
(PartDiffSeq(g,Z,I)).k is_partial_differentiable_on Z,I/.(k+1) by A1;
1 <= k+1 by NAT_1:11; then
I/.(k+1) in Seg m by A1,Lm6; then
A3:1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
A4:(PartDiffSeq(f+g,Z,I)).(k+1)
= ((PartDiffSeq((f+g),Z,I)).k)`partial|(Z,I/.(k+1)) by Def7
.= ((PartDiffSeq(f,Z,I).k)
+ (PartDiffSeq(g,Z,I).k))`partial|(Z,I/.(k+1)) by A1,Th74
.= (PartDiffSeq(f,Z,I).k)`partial|(Z,I/.(k+1))
+ (PartDiffSeq(g,Z,I).k)`partial|(Z,I/.(k+1)) by A2,A1,A3,Th65;
(PartDiffSeq(f,Z,I)).(k+1)
= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1)) by Def7;
hence (f+g)`partial|(Z,I) = f`partial|(Z,I) + g`partial|(Z,I) by A4,Def7;
end;
theorem Th76:
for X be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m
& f is_partial_differentiable_on X,I
& g is_partial_differentiable_on X,I
holds
for i st i <= (len I)-1 holds
(PartDiffSeq(f-g,X,I)).i is_partial_differentiable_on X,I/.(i+1)
& (PartDiffSeq(f-g,X,I)).i = (PartDiffSeq(f,X,I).i)-(PartDiffSeq(g,X,I).i)
proof
let Z be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL;
assume A1: Z is open & rng I c= Seg m
& f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I;
defpred P[Nat] means
$1 <= (len I)-1 implies
( (PartDiffSeq(f-g,Z,I)).$1 is_partial_differentiable_on Z,I/.($1+1)
& (PartDiffSeq(f-g,Z,I)).$1
= (PartDiffSeq(f,Z,I)).$1 - (PartDiffSeq(g,Z,I)).$1 );
reconsider Z0=0 as Element of NAT;
A2:P[0]
proof
assume 0 <= (len I)-1; then
A3: (PartDiffSeq(f,Z,I)).Z0 is_partial_differentiable_on Z,I/.(Z0 + 1) &
(PartDiffSeq(g,Z,I)).Z0 is_partial_differentiable_on Z,I/.(Z0 + 1)
by A1;
A4: f|Z - g|Z = (f-g) |Z by RFUNCT_1:47;
A5: f|Z = (PartDiffSeq(f,Z,I)).0 & g|Z = (PartDiffSeq(g,Z,I)).0
& (f-g) |Z = (PartDiffSeq(f-g,Z,I)).0 by Def7;
1 <= len I by FINSEQ_1:20; then
I/.1 in Seg m by A1,Lm6; then
1<=I/.1 & I/.1 <= m by FINSEQ_1:1;
hence thesis by A5,A4,A1,A3,Th66;
end;
A6:for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume A7: P[k];
assume A8: k+1 <=(len I)-1;
A9: k <= k+1 by NAT_1:11; then
A10:k <=(len I)-1 by A8,XXREAL_0:2;
A11:(PartDiffSeq(f,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1) &
(PartDiffSeq(g,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1)
by A8,A1;
k+1 <= (len I)-1 + 1 by A10,XREAL_1:6; then
I/.(k+1) in Seg m by A1,Lm6,NAT_1:11; then
A12: 1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
k in NAT by ORDINAL1:def 12; then
A13:(PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1) &
(PartDiffSeq(g,Z,I)).k is_partial_differentiable_on Z,I/.(k+1)
by A9,A1,A8,XXREAL_0:2;
A14: (PartDiffSeq(f,Z,I)).(k+1)
= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1)) by Def7;
(k+1)+1 <=(len I)-1 +1 by A8,XREAL_1:6; then
I/.((k+1)+1) in Seg m by A1,Lm6,NAT_1:11; then
A15: 1<=I/.((k+1)+1) & I/.((k+1)+1) <= m by FINSEQ_1:1;
A16:(PartDiffSeq(f-g,Z,I)).(k+1)
= ((PartDiffSeq(f-g,Z,I)).k)`partial|(Z,I/.(k+1)) by Def7
.= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1))
- ((PartDiffSeq(g,Z,I)).k)`partial|(Z,I/.(k+1))
by A13,A1,A12,Th66,A9,A7,A8,XXREAL_0:2
.= (PartDiffSeq(f,Z,I)).(k+1) - (PartDiffSeq(g,Z,I)).(k+1)
by A14,Def7;
hence
(PartDiffSeq(f-g,Z,I)).(k+1) is_partial_differentiable_on Z,I/.((k+1)+1)
by A1,A11,A15,Th66;
thus (PartDiffSeq(f-g,Z,I)).(k+1)
= (PartDiffSeq(f,Z,I)).(k+1) - (PartDiffSeq(g,Z,I)).(k+1) by A16;
end;
for n be Nat holds P[ n ] from NAT_1:sch 2(A2,A6);
hence thesis;
end;
theorem Th77:
for X be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m
& f is_partial_differentiable_on X,I
& g is_partial_differentiable_on X,I
holds
f-g is_partial_differentiable_on X,I
& (f-g)`partial|(X,I) = f`partial|(X,I) - g`partial|(X,I)
proof
let Z be Subset of REAL m, I be non empty FinSequence of NAT,
f,g be PartFunc of REAL m,REAL;
assume A1: Z is open & rng I c= Seg m
& f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I;
hence f-g is_partial_differentiable_on Z,I by Th76;
reconsider k=(len I)-1 as Element of NAT by INT_1:5,FINSEQ_1:20;
A2:(PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1) &
(PartDiffSeq(g,Z,I)).k
is_partial_differentiable_on Z,I/.(k+1) by A1;
1 <= k+1 by NAT_1:11; then
I/.(k+1) in Seg m by A1,Lm6; then
A3:1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
(PartDiffSeq(f-g,Z,I)).(k+1)
= ((PartDiffSeq((f-g),Z,I)).k)`partial|(Z,I/.(k+1)) by Def7
.= ((PartDiffSeq(f,Z,I).k)
-(PartDiffSeq(g,Z,I).k))`partial|(Z,I/.(k+1)) by A1,Th76; then
A4:(PartDiffSeq(f-g,Z,I)).(k+1)
= (PartDiffSeq(f,Z,I).k)`partial|(Z,I/.(k+1))
- (PartDiffSeq(g,Z,I).k)`partial|(Z,I/.(k+1)) by A2,A1,A3,Th66;
(PartDiffSeq(f,Z,I)).(k+1)
= ((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1)) by Def7;
hence (f-g)`partial|(Z,I) = f`partial|(Z,I) - g`partial|(Z,I) by A4,Def7;
end;
theorem Th78:
for X be Subset of REAL m, r be Real, I be non empty FinSequence of NAT,
f be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m & f is_partial_differentiable_on X,I
holds
for i st i <= (len I)-1 holds
(PartDiffSeq(r(#)f,X,I)).i is_partial_differentiable_on X,I/.(i+1)
& (PartDiffSeq(r(#)f,X,I)).i = r(#)(PartDiffSeq(f,X,I).i)
proof
let Z be Subset of REAL m, r be Real, I be non empty FinSequence of NAT,
f be PartFunc of REAL m,REAL;
assume
A1: Z is open & rng I c= Seg m
& f is_partial_differentiable_on Z,I;
defpred P[Nat] means
$1 <= (len I)-1 implies
( (PartDiffSeq(r(#)f,Z,I)).$1 is_partial_differentiable_on Z,I/.($1+1)
& (PartDiffSeq(r(#)f,Z,I)).$1 = r(#)((PartDiffSeq(f,Z,I)).$1) );
reconsider Z0=0 as Element of NAT;
A2:P[0]
proof
assume 0 <= (len I)-1; then
A3: (PartDiffSeq(f,Z,I)).Z0
is_partial_differentiable_on Z,I/.( Z0 + 1) by A1;
A4: (r(#)f) |Z = r(#)(f|Z) by RFUNCT_1:49;
(PartDiffSeq(r(#)f,Z,I)).Z0 = (r(#)f) | Z by Def7; then
A5: (PartDiffSeq(r(#)f,Z,I)).Z0 = r(#)((PartDiffSeq(f,Z,I)).Z0) by A4,Def7;
1 <= len I by FINSEQ_1:20; then
I/.1 in Seg m by A1,Lm6; then
1<=I/.1 & I/.1 <= m by FINSEQ_1:1;
hence thesis by A5,A1,A3,Th67;
end;
A6:for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume A7: P[k];
assume A8: k+1 <=(len I)-1;
A9: k <= k+1 by NAT_1:11; then
A10:k <=(len I)-1 by A8,XXREAL_0:2;
A11:(PartDiffSeq(f,Z,I)).(k+1)
is_partial_differentiable_on Z,I/.((k+1)+1) by A8,A1;
k+1 <= (len I)-1 + 1 by A10,XREAL_1:6; then
I/.(k+1) in Seg m by A1,Lm6,NAT_1:11; then
A12: 1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
k in NAT by ORDINAL1:def 12; then
A13:(PartDiffSeq(f,Z,I)).k
is_partial_differentiable_on Z,I/.(k+1) by A1,A9,A8,XXREAL_0:2;
(k+1)+1 <=(len I)-1 +1 by A8,XREAL_1:6; then
I/.((k+1)+1) in Seg m by A1,Lm6,NAT_1:11; then
A14: 1<=I/.((k+1)+1) & I/.((k+1)+1) <= m by FINSEQ_1:1;
A15:(PartDiffSeq(r(#)f,Z,I)).(k+1)
= (r(#)(PartDiffSeq(f,Z,I)).k )`partial|(Z,I/.(k+1))
by A9,A8,A7,Def7,XXREAL_0:2
.= r(#)(((PartDiffSeq(f,Z,I)).k)`partial|(Z,I/.(k+1)))
by A13,A1,A12,Th67
.= r(#)((PartDiffSeq(f,Z,I)).(k+1)) by Def7;
hence (PartDiffSeq(r(#)f,Z,I)).(k+1)
is_partial_differentiable_on Z,I/.((k+1)+1) by A1,A11,A14,Th67;
thus (PartDiffSeq(r(#)f,Z,I)).(k+1)
= r(#)(PartDiffSeq(f,Z,I)).(k+1) by A15;
end;
for n be Nat holds P[ n ] from NAT_1:sch 2(A2,A6);
hence thesis;
end;
theorem Th79:
for X be Subset of REAL m, r be Real, I be non empty FinSequence of NAT,
f be PartFunc of REAL m,REAL st
X is open & rng I c= Seg m & f is_partial_differentiable_on X,I
holds
r(#)f is_partial_differentiable_on X,I
& (r(#)f)`partial|(X,I) = r(#)(f`partial|(X,I))
proof
let Z be Subset of REAL m, r be Real, I be non empty FinSequence of NAT,
f be PartFunc of REAL m,REAL;
assume A1: Z is open & rng I c= Seg m
& f is_partial_differentiable_on Z,I;
hence r(#)f is_partial_differentiable_on Z,I by Th78;
reconsider k=(len I)-1 as Element of NAT by INT_1:5,FINSEQ_1:20;
A2:(PartDiffSeq(f,Z,I)).k
is_partial_differentiable_on Z,I/.(k+1) by A1;
1 <= k+1 by NAT_1:11; then
I/.(k+1) in Seg m by A1,Lm6; then
A3:1<=I/.(k+1) & I/.(k+1) <= m by FINSEQ_1:1;
(PartDiffSeq(r(#)f,Z,I)).(k+1)
= ((PartDiffSeq((r(#)f),Z,I)).k)`partial|(Z,I/.(k+1)) by Def7
.= (r(#)(PartDiffSeq(f,Z,I).k))`partial|(Z,I/.(k+1)) by A1,Th78
.= r(#)((PartDiffSeq(f,Z,I).k)`partial|(Z,I/.(k+1)))
by A2,A1,A3,Th67;
hence (r(#)f)`partial|(Z,I) = r(#)(f`partial|(Z,I)) by Def7;
end;
definition
let m be non zero Element of NAT;
let f be PartFunc of REAL m,REAL;
let k be Nat;
let Z be set;
pred f is_partial_differentiable_up_to_order k,Z means
for I be non empty FinSequence of NAT st len I <= k & rng I c= Seg m
holds f is_partial_differentiable_on Z,I;
end;
theorem Th80:
for f be PartFunc of REAL m,REAL,
I,G be non empty FinSequence of NAT
holds f is_partial_differentiable_on Z,G^I
iff f is_partial_differentiable_on Z,G
& f`partial|(Z,G) is_partial_differentiable_on Z,I
proof
let f be PartFunc of REAL m,REAL,
I,G be non empty FinSequence of NAT;
set g = f`partial|(Z,G);
A1:dom G c= dom (G^I) by FINSEQ_1:26;
A2:for i be Nat st i <= len G - 1 holds (G^I)/.(i+1) = G/.(i+1)
proof
let i be Nat;
assume i <= len G - 1; then
1 <= i+1 & i+1 <= len G by NAT_1:11,XREAL_1:19; then
A3: i+1 in dom G by FINSEQ_3:25; then
(G^I)/.(i+1) = (G^I).(i+1) by A1,PARTFUN1:def 6; then
(G^I)/.(i+1) = G.(i+1) by A3,FINSEQ_1:def 7;
hence (G^I)/.(i+1) = G/.(i+1) by A3,PARTFUN1:def 6;
end;
A4:len (G^I) = len G + len I by FINSEQ_1:22;
A5:for i be Nat st i <= (len I)-1
holds (G^I)/.(len G + (i+1)) = I/.(i+1)
proof
let i be Nat;
assume i <= len I - 1; then
A6: i+1 <= len I by XREAL_1:19; then
A7: i+1 in dom I by NAT_1:11,FINSEQ_3:25;
1 <= len G + (i+1) by NAT_1:11,XREAL_1:38; then
len G + (i+1) in dom (G^I) by A4,A6,FINSEQ_3:25,XREAL_1:7;
hence (G^I)/.(len G + (i+1)) =(G^I).(len G + (i+1)) by PARTFUN1:def 6
.= I.(i+1) by A7,FINSEQ_1:def 7
.= I/.(i+1) by A7,PARTFUN1:def 6;
end;
defpred P0[Nat] means
$1 <= len G - 1 implies
(PartDiffSeq(f,Z,G^I)).$1 =(PartDiffSeq(f,Z,G)).$1;
A8:P0[0]
proof
assume 0 <= len G - 1;
(PartDiffSeq(f,Z,G^I)).0 = f |Z by Def7;
hence (PartDiffSeq(f,Z,G^I)).0 = (PartDiffSeq(f,Z,G)).0 by Def7;
end;
A9:for k be Nat st P0[k] holds P0[k+1]
proof
let k be Nat;
assume A10: P0[k];
assume A11: k+1 <= len G - 1;
A12:k <= k+1 by NAT_1:11;
thus (PartDiffSeq(f,Z,G^I)).(k+1)
= ((PartDiffSeq(f,Z,G^I)).k)`partial|(Z,(G^I)/.(k+1)) by Def7
.= ((PartDiffSeq(f,Z,G)).k)`partial|(Z,G/.(k+1))
by A12,A2,A10,A11,XXREAL_0:2
.= (PartDiffSeq(f,Z,G)).(k+1) by Def7;
end;
A13:for n be Nat holds P0[n] from NAT_1:sch 2(A8,A9);
hereby assume A14: f is_partial_differentiable_on Z,G^I;
now let i be Element of NAT;
assume A15: i <= (len G)-1; then
i + 0 <= (len G) -1 + (len I) by XREAL_1:7; then
A16: (PartDiffSeq(f,Z,(G^I))).i
is_partial_differentiable_on Z,(G^I)/.(i+1) by A4,A14;
(G^I)/.(i+1) = G/.(i+1) by A15,A2;
hence (PartDiffSeq(f,Z,G)).i is_partial_differentiable_on Z,G/.(i+1)
by A16,A15,A13;
end;
hence A17: f is_partial_differentiable_on Z,G;
now let i be Element of NAT;
assume A18: i <= (len I)-1; then
len G + i <= len G + ((len I)-1) by XREAL_1:6; then
A19: (PartDiffSeq(f,Z,(G^I))).(len G + i)
is_partial_differentiable_on Z,(G^I)/.((len G + i)+1) by A4,A14;
(len I)-1 <= (len I)-0 by XREAL_1:13; then
A20: i <= len I by A18,XXREAL_0:2;
(G^I)/.((len G + i)+1) = (G^I)/.(len G + (i+1)); then
(G^I)/.((len G + i)+1) = I/.(i+1) by A18,A5;
hence (PartDiffSeq(g,Z,I)).i
is_partial_differentiable_on Z,I/.(i+1) by A19,A20,Th73,A17;
end;
hence g is_partial_differentiable_on Z,I;
end;
now assume A20: f is_partial_differentiable_on Z,G
& g is_partial_differentiable_on Z,I;
now let i be Element of NAT;
assume A21: i <= (len (G^I))-1;
per cases;
suppose A22: i <= (len G) -1; then
A23: (PartDiffSeq(f,Z,G)).i is_partial_differentiable_on Z,G/.(i+1) by A20;
G/.(i+1) =(G^I)/.(i+1) by A22,A2;
hence (PartDiffSeq(f,Z,G^I)).i
is_partial_differentiable_on Z,(G^I)/.(i+1) by A22,A13,A23;
end;
suppose not (i <= (len G) -1); then
len G < i+1 by XREAL_1:19; then
len G <= i by NAT_1:13; then
reconsider k = i - len G as Element of NAT by INT_1:5;
A24: i - len G <=(len G)+(len I)-1 - len G by A21,A4,XREAL_1:9; then
A25: k <= (len I) -1 & i = k+len G;
A26: (PartDiffSeq(g,Z,I)).k
is_partial_differentiable_on Z,I/.(k+1) by A20,A24;
(len I)-1 <= (len I)-0 by XREAL_1:13; then
A27: k <= (len I) by A24,XXREAL_0:2;
i+1 = (k+1) + len G; then
I/.(k+1) = (G^I)/.(i+1) by A24,A5;
hence (PartDiffSeq(f,Z,(G^I))).i
is_partial_differentiable_on Z,(G^I)/.(i+1) by A20,A26,A25,A27,Th73;
end;
end;
hence f is_partial_differentiable_on Z,(G^I);
end;
hence thesis;
end;
set Z0 = 0;
theorem Th81:
for f be PartFunc of REAL m,REAL holds
f is_partial_differentiable_on Z,<*i*> iff f is_partial_differentiable_on Z,i
proof
let f be PartFunc of REAL m,REAL;
set I = <*i*>;
A1:len I = 1 by FINSEQ_1:39;
A2:(PartDiffSeq(f,Z,I)).0 = f|Z by Def7;
1 in Seg 1; then
A3:1 in dom I by FINSEQ_1:38;
I/.(Z0 + 1) =I.1 by A3,PARTFUN1:def 6; then
I/.(Z0 + 1) = i by FINSEQ_1:40;
hence f is_partial_differentiable_on Z,I implies
f is_partial_differentiable_on Z,i by A2,A1;
assume A4:f is_partial_differentiable_on Z,i;
now let k be Element of NAT;
assume k <= len I - 1; then
A5: k = 0 by A1; then
I/.(k+1) = I.1 by A3,PARTFUN1:def 6; then
I/.(k+1) = i by FINSEQ_1:40;
hence (PartDiffSeq(f,Z,I)).k is_partial_differentiable_on Z,I/.(k+1)
by A4,A5,Def7;
end;
hence thesis;
end;
definition let m be non zero Element of NAT, Z be set,
i be Element of NAT, f be PartFunc of REAL m,REAL;
redefine pred f is_partial_differentiable_on Z,i means
f is_partial_differentiable_on Z,<*i*>;
compatibility by Th81;
end;
theorem Th82:
for f be PartFunc of REAL m,REAL, Z be Subset of REAL m,
i be Element of NAT
st Z is open & 1 <= i & i <= m & f is_partial_differentiable_on Z,i
holds f`partial|(Z,<*i*>) = f`partial|(Z,i)
proof
let f be PartFunc of REAL m,REAL, Z be Subset of REAL m,
i be Element of NAT;
assume A1:Z is open & 1 <= i & i <= m & f is_partial_differentiable_on Z,i;
set I = <*i*>;
A2:PartDiffSeq(f,Z,I).0 = f|Z by Def7;
1 in Seg 1; then
1 in dom I by FINSEQ_1:38; then
I/.(0 + 1) = I.1 by PARTFUN1:def 6; then
A3:I/.(0 + 1) = i by FINSEQ_1:40;
thus f`partial|(Z,I) = (PartDiffSeq(f,Z,I)).1 by FINSEQ_1:39
.= (PartDiffSeq(f,Z,I).0)`partial|(Z,I/.(0 + 1)) by Def7
.= f`partial|(Z,i) by A2,A3,A1,Th71;
end;
theorem Th83:
for i,j being Nat
for f be PartFunc of REAL m,REAL,
I be non empty FinSequence of NAT
st f is_partial_differentiable_up_to_order (i+j),Z
& rng I c= Seg m & len I = j
holds
f`partial|(Z,I) is_partial_differentiable_up_to_order i,Z
proof let i,j be Nat;
let f be PartFunc of REAL m,REAL,
I be non empty FinSequence of NAT;
assume A1: f is_partial_differentiable_up_to_order (i+j),Z
& rng I c= Seg m & len I = j;
let J be non empty FinSequence of NAT;
assume A2: len J <= i & rng J c= Seg m;
reconsider G = I^J as non empty FinSequence of NAT;
A3:rng G = rng I \/ rng J by FINSEQ_1:31;
len G = len I + len J by FINSEQ_1:22; then
len G <= i+j & rng G c= Seg m by A2,A3,A1,XBOOLE_1:8,XREAL_1:6; then
f is_partial_differentiable_on Z,G by A1;
hence thesis by Th80;
end;
theorem Th84:
for i,j being Nat
for f be PartFunc of REAL m,REAL
st f is_partial_differentiable_up_to_order i,Z & j <= i
holds f is_partial_differentiable_up_to_order j,Z by XXREAL_0:2;
theorem
for X be Subset of REAL m, f,g be PartFunc of REAL m,REAL
st X is open & f is_partial_differentiable_up_to_order i,X
& g is_partial_differentiable_up_to_order i,X
holds f+g is_partial_differentiable_up_to_order i,X
& f-g is_partial_differentiable_up_to_order i,X
proof
let Z be Subset of REAL m, f,g be PartFunc of REAL m,REAL;
assume A1: Z is open & f is_partial_differentiable_up_to_order i,Z
& g is_partial_differentiable_up_to_order i,Z;
hereby let I be non empty FinSequence of NAT;
assume A2:len I <= i & rng I c= Seg m; then
f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I by A1;
hence f+g is_partial_differentiable_on Z,I by A1,A2,Th75;
end;
let I be non empty FinSequence of NAT;
assume A3:len I <= i & rng I c= Seg m; then
f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I by A1;
hence thesis by A1,A3,Th77;
end;
theorem
for X be Subset of REAL m, f be PartFunc of REAL m,REAL, r be Real
st X is open & f is_partial_differentiable_up_to_order i,X
holds r(#)f is_partial_differentiable_up_to_order i,X
proof
let Z be Subset of REAL m, f be PartFunc of REAL m,REAL, r be Real;
assume A1: Z is open & f is_partial_differentiable_up_to_order i,Z;
let I be non empty FinSequence of NAT;
assume A2:len I <= i & rng I c= Seg m; then
f is_partial_differentiable_on Z,I by A1;
hence thesis by A1,A2,Th79;
end;
theorem
for X be Subset of REAL m st X is open holds
for i be Element of NAT, f,g be PartFunc of REAL m,REAL
st f is_partial_differentiable_up_to_order i,X
& g is_partial_differentiable_up_to_order i,X
holds f(#)g is_partial_differentiable_up_to_order i,X
proof
let Z be Subset of REAL m;
assume A1: Z is open;
defpred P[Nat] means
for f,g be PartFunc of REAL m,REAL
st f is_partial_differentiable_up_to_order $1,Z
& g is_partial_differentiable_up_to_order $1,Z
holds f(#)g is_partial_differentiable_up_to_order $1,Z;
A2:P[0]
proof
let f,g be PartFunc of REAL m,REAL;
thus thesis;
end;
A3:for k be Nat st P[k] holds P[k+1]
proof
let k be Nat;
assume A4: P[k];
let f,g be PartFunc of REAL m,REAL;
assume A5: f is_partial_differentiable_up_to_order k+1,Z
& g is_partial_differentiable_up_to_order k+1,Z; then
A6: f is_partial_differentiable_up_to_order k,Z
& g is_partial_differentiable_up_to_order k,Z by Th84,NAT_1:11;
now let I be non empty FinSequence of NAT;
assume A7:len I <= k+1 & rng I c= Seg m; then
A8:f is_partial_differentiable_on Z,I
& g is_partial_differentiable_on Z,I by A5;
A9:1 <= len I by FINSEQ_1:20; then
A10: 1 in dom I by FINSEQ_3:25; then
A11: I/.1 = I.1 by PARTFUN1:def 6;
A12: I.1 in rng I by A10,FUNCT_1:3; then
I.1 in Seg m by A7; then
reconsider i = I.1 as Element of NAT;
A13: 1 <= i & i <= m by A12,A7,FINSEQ_1:1;
per cases;
suppose 1 = len I; then
A14: I = <*I/.1*> by FINSEQ_5:14; then
f is_partial_differentiable_on Z,i
& g is_partial_differentiable_on Z,i by A8,A11; then
f(#)g is_partial_differentiable_on Z,i by A13,Th68,A1;
hence f(#)g is_partial_differentiable_on Z,I by A14,A11;
end;
suppose 1 <> len I; then
1 < len I by A9,XXREAL_0:1; then
1+1 <= len I by NAT_1:13; then
1 <= len I - 1 by XREAL_1:19; then
1 <= len (I/^1) by A9,RFINSEQ:def 1; then
reconsider J = I/^1 as non empty FinSequence of NAT;
set I1 = <*i*>;
len I - 1 <= k by A7,XREAL_1:20; then
A15: len J <= k by A9,RFINSEQ:def 1;
A16: I = <*I/.1*>^(I/^1) by FINSEQ_5:29; then
A17: rng I1 c= rng I & rng J c= rng I by A11,FINSEQ_1:29,30; then
A18: rng J c= Seg m by A7;
I = I1^J by A11,FINSEQ_5:29; then
A19: f is_partial_differentiable_on Z,i
& g is_partial_differentiable_on Z,i by A8,Th80; then
A20: (f(#)g) is_partial_differentiable_on Z,i by A13,Th68,A1; then
A21: (f(#)g) is_partial_differentiable_on Z,I1;
A22: (f(#)g)`partial|(Z,I1) = (f(#)g)`partial|(Z,i) by A1,A13,Th82,A20
.=(f`partial|(Z,i))(#)g + f(#)(g`partial|(Z,i))
by A19,A13,Th68,A1
.= f`partial|(Z,I1)(#)g + f(#)(g`partial|(Z,i)) by A1,A13,Th82,A19
.= f`partial|(Z,I1)(#)g + f(#)(g`partial|(Z,I1)) by A1,A13,Th82,A19;
len I1 =1 & rng I1 c= Seg m by A17,A7,FINSEQ_1:39; then
f`partial|(Z,I1) is_partial_differentiable_up_to_order k,Z
& g`partial|(Z,I1) is_partial_differentiable_up_to_order k,Z
by Th83,A5; then
f`partial|(Z,I1)(#)g is_partial_differentiable_up_to_order k,Z
& f(#)(g`partial|(Z,I1)) is_partial_differentiable_up_to_order k,Z
by A4,A6; then
f`partial|(Z,I1)(#)g is_partial_differentiable_on Z,J
& f(#)(g`partial|(Z,I1)) is_partial_differentiable_on Z,J
by A15,A18; then
f`partial|(Z,I1) (#)g + f(#)(g`partial|(Z,I1))
is_partial_differentiable_on Z,J by A1,A18,Th75;
hence (f(#)g) is_partial_differentiable_on Z,I
by A21,A16,A11,A22,Th80;
end;
end;
hence f(#)g is_partial_differentiable_up_to_order k+1,Z;
end;
for n be Nat holds P[ n ] from NAT_1:sch 2(A2,A3);
hence thesis;
end;
theorem
for f be PartFunc of REAL m,REAL, I,G be non empty FinSequence of NAT
st f is_partial_differentiable_on Z,G holds
(f`partial|(Z,G))`partial|(Z,I) = f`partial|(Z,(G^I))
proof
let f be PartFunc of REAL m,REAL, I,G be non empty FinSequence of NAT;
assume AS: f is_partial_differentiable_on Z,G;
thus (f`partial|(Z,G))`partial|(Z,I)
= (PartDiffSeq(f,Z,(G^I))).(len G + len I) by Th73,AS
.= f`partial|(Z,(G^I)) by FINSEQ_1:22;
end;
~~