let x0 be Real; for f1, f2 being PartFunc of REAL,REAL
for I, J being non empty Interval st f1 is_differentiable_on_interval I & f2 is_differentiable_on_interval J & f1 .: I c= J & x0 = sup I & x0 in I holds
( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )
let f1, f2 be PartFunc of REAL,REAL; for I, J being non empty Interval st f1 is_differentiable_on_interval I & f2 is_differentiable_on_interval J & f1 .: I c= J & x0 = sup I & x0 in I holds
( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )
let I, J be non empty Interval; ( f1 is_differentiable_on_interval I & f2 is_differentiable_on_interval J & f1 .: I c= J & x0 = sup I & x0 in I implies ( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 ) )
assume that
A1:
f1 is_differentiable_on_interval I
and
A2:
f2 is_differentiable_on_interval J
and
A3:
f1 .: I c= J
and
A4:
x0 = sup I
and
A5:
x0 in I
; ( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )
A6:
x0 = upper_bound I
by A4, A5, Lm6;
sup I = upper_bound I
by A4, A5, Lm6;
then A7:
f1 | I is_left_differentiable_in upper_bound I
by A1, A4, A5, Th11;
then consider R1 being Real such that
A8:
( R1 > 0 & [.(x0 - R1),x0.] c= dom (f1 | I) )
by A6, FDIFF_3:def 4;
A9:
f1 . x0 = (f1 | I) . x0
by A5, FUNCT_1:49;
A10:
f1 . x0 in f1 .: I
by A5, A1, FUNCT_1:def 6;
then
f1 . x0 in J
by A3;
then A11:
(f1 | I) . x0 in J
by A5, FUNCT_1:49;
set F1 = (f1 | I) | (left_closed_halfline x0);
x0 in ].-infty,x0.]
by XXREAL_1:234;
then A12:
x0 in left_closed_halfline x0
by LIMFUNC1:def 1;
then A13:
((f1 | I) | (left_closed_halfline x0)) . x0 = (f1 | I) . x0
by FUNCT_1:49;
per cases
( (f1 | I) . x0 = inf J or (f1 | I) . x0 = sup J or ( (f1 | I) . x0 <> inf J & (f1 | I) . x0 <> sup J ) )
;
suppose A14:
(f1 | I) . x0 = inf J
;
( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )then A15:
f2 | J is_right_differentiable_in (f1 | I) . x0
by A11, A2, Th11;
then A16:
f2 is_right_differentiable_in f1 . x0
by A9, Th9;
consider R2 being
Real such that A17:
(
R2 > 0 &
[.((f1 | I) . x0),(((f1 | I) . x0) + R2).] c= dom (f2 | J) )
by A15, FDIFF_3:def 3;
set F2 =
(f2 | J) | (right_closed_halfline ((f1 | I) . x0));
f1 | I is_Lcontinuous_in x0
by A7, A6, FDIFF_3:5;
then A18:
for
e being
Real st
0 < e holds
ex
d being
Real st
(
0 < d & ( for
x being
Real st
x in dom ((f1 | I) | (left_closed_halfline x0)) &
|.(x - x0).| < d holds
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < e ) )
by Th36, FCONT_1:3;
A19:
for
r1 being
Real st
r1 > 0 holds
ex
r0 being
Real st
(
r0 > 0 &
[.(x0 - r0),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1) )
proof
let r1 be
Real;
( r1 > 0 implies ex r0 being Real st
( r0 > 0 & [.(x0 - r0),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1) ) )
set s =
min (
(r1 / 2),
R2);
assume A20:
r1 > 0
;
ex r0 being Real st
( r0 > 0 & [.(x0 - r0),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1) )
A21:
(
0 < r1 / 2 &
r1 / 2
< r1 )
by A20, XREAL_1:215, XREAL_1:216;
then A22:
(
0 < min (
(r1 / 2),
R2) &
min (
(r1 / 2),
R2)
<= r1 / 2 &
min (
(r1 / 2),
R2)
<= R2 )
by A17, XXREAL_0:17, XXREAL_0:21;
consider d2 being
Real such that A23:
(
0 < d2 & ( for
x being
Real st
x in dom ((f1 | I) | (left_closed_halfline x0)) &
|.(x - x0).| < d2 holds
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < min (
(r1 / 2),
R2) ) )
by A18, A21, A17, XXREAL_0:21;
set r0 =
min (
(d2 / 2),
R1);
A24:
(
0 < d2 / 2 &
d2 / 2
< d2 )
by A23, XREAL_1:215, XREAL_1:216;
then A25:
(
0 < min (
(d2 / 2),
R1) &
min (
(d2 / 2),
R1)
<= d2 / 2 &
min (
(d2 / 2),
R1)
<= R1 )
by A8, XXREAL_0:17, XXREAL_0:21;
x0 - R1 <= x0 - (min ((d2 / 2),R1))
by XXREAL_0:17, XREAL_1:10;
then A26:
[.(x0 - (min ((d2 / 2),R1))),x0.] c= [.(x0 - R1),x0.]
by XXREAL_1:34;
take
min (
(d2 / 2),
R1)
;
( min ((d2 / 2),R1) > 0 & [.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1) )
thus
min (
(d2 / 2),
R1)
> 0
by A8, A24, XXREAL_0:21;
[.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1)
now for x being Real st x in [.(x0 - (min ((d2 / 2),R1))),x0.] holds
x in dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1)let x be
Real;
( x in [.(x0 - (min ((d2 / 2),R1))),x0.] implies x in dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1) )assume A27:
x in [.(x0 - (min ((d2 / 2),R1))),x0.]
;
x in dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1)then A28:
x in dom (f1 | I)
by A26, A8;
then A29:
(
x in dom f1 &
x in I )
by RELAT_1:57;
then A30:
f1 . x in f1 .: I
by FUNCT_1:def 6;
(
J = [.(inf J),(sup J).[ or
J = [.(inf J),(sup J).] )
by A11, A14, Lm23;
then A31:
(f1 | I) . x0 <= f1 . x
by A3, A14, A30, XXREAL_1:1, XXREAL_1:3;
A32:
(
x0 - (min ((d2 / 2),R1)) <= x &
x <= x0 )
by A27, XXREAL_1:1;
then
|.(x - x0).| = - (x - x0)
by ABSVALUE:30, XREAL_1:47;
then
|.(x - x0).| <= - (- (min ((d2 / 2),R1)))
by A32, XREAL_1:19, XREAL_1:24;
then
|.(x - x0).| <= d2 / 2
by A25, XXREAL_0:2;
then A33:
|.(x - x0).| < d2
by A24, XXREAL_0:2;
x in ].-infty,x0.]
by A32, XXREAL_1:234;
then A34:
x in left_closed_halfline x0
by LIMFUNC1:def 1;
then
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < min (
(r1 / 2),
R2)
by A23, A33, A28, RELAT_1:57;
then
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < r1 / 2
by A22, XXREAL_0:2;
then A35:
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < r1
by A21, XXREAL_0:2;
x in dom ((f1 | I) | (left_closed_halfline x0))
by A28, A34, RELAT_1:57;
then A36:
(
((f1 | I) | (left_closed_halfline x0)) . x = (f1 | I) . x &
(f1 | I) . x = f1 . x )
by A26, A8, A27, FUNCT_1:47;
then
((f1 | I) | (left_closed_halfline x0)) . x0 <= ((f1 | I) | (left_closed_halfline x0)) . x
by A31, A12, FUNCT_1:49;
then
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| = (((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)
by XREAL_1:48, ABSVALUE:def 1;
then
((f1 | I) | (left_closed_halfline x0)) . x < (((f1 | I) | (left_closed_halfline x0)) . x0) + r1
by A35, XREAL_1:19;
hence
x in dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1)
by A29, A9, A13, A31, A36, FUNCT_1:54, XXREAL_1:1;
verum end;
hence
[.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.(f1 . x0),((f1 . x0) + r1).] |` f1)
;
verum
end; hence
f2 * f1 is_left_differentiable_in x0
by A6, A4, A5, A1, A16, Th43;
Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 Ldiff (
(f2 * f1),
x0) =
(Rdiff (f2,(f1 . x0))) * (Ldiff (f1,x0))
by A6, A4, A5, A1, A16, A19, Th43
.=
(Rdiff (f2,(f1 . x0))) * ((f1 `\ I) . x0)
by A4, A5, A1, Def2
.=
((f2 `\ J) . (f1 . x0)) * ((f1 `\ I) . x0)
by A9, A2, A3, A10, A14, Def2
.=
(((f2 `\ J) * f1) . x0) * ((f1 `\ I) . x0)
by A5, A1, FUNCT_1:13
;
hence
Ldiff (
(f2 * f1),
x0)
= (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0
by VALUED_1:5;
verum end; suppose A37:
(f1 | I) . x0 = sup J
;
( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )then A38:
f2 | J is_left_differentiable_in (f1 | I) . x0
by A11, A2, Th11;
A39:
f2 is_left_differentiable_in f1 . x0
by A38, A9, Th10;
consider R2 being
Real such that A40:
(
R2 > 0 &
[.(((f1 | I) . x0) - R2),((f1 | I) . x0).] c= dom (f2 | J) )
by A38, FDIFF_3:def 4;
set F2 =
(f2 | J) | (left_closed_halfline ((f1 | I) . x0));
f1 | I is_Lcontinuous_in x0
by A6, A7, FDIFF_3:5;
then A41:
for
e being
Real st
0 < e holds
ex
d being
Real st
(
0 < d & ( for
x being
Real st
x in dom ((f1 | I) | (left_closed_halfline x0)) &
|.(x - x0).| < d holds
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < e ) )
by Th36, FCONT_1:3;
A42:
for
r1 being
Real st
r1 > 0 holds
ex
r0 being
Real st
(
r0 > 0 &
[.(x0 - r0),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1) )
proof
let r1 be
Real;
( r1 > 0 implies ex r0 being Real st
( r0 > 0 & [.(x0 - r0),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1) ) )
set s =
min (
(r1 / 2),
R2);
assume
r1 > 0
;
ex r0 being Real st
( r0 > 0 & [.(x0 - r0),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1) )
then A44:
(
0 < r1 / 2 &
r1 / 2
< r1 )
by XREAL_1:215, XREAL_1:216;
then A45:
(
0 < min (
(r1 / 2),
R2) &
min (
(r1 / 2),
R2)
<= r1 / 2 &
min (
(r1 / 2),
R2)
<= R2 )
by A40, XXREAL_0:17, XXREAL_0:21;
consider d2 being
Real such that A46:
(
0 < d2 & ( for
x being
Real st
x in dom ((f1 | I) | (left_closed_halfline x0)) &
|.(x - x0).| < d2 holds
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < min (
(r1 / 2),
R2) ) )
by A41, A44, A40, XXREAL_0:21;
set r0 =
min (
(d2 / 2),
R1);
A47:
(
0 < d2 / 2 &
d2 / 2
< d2 )
by A46, XREAL_1:215, XREAL_1:216;
then A48:
(
0 < min (
(d2 / 2),
R1) &
min (
(d2 / 2),
R1)
<= d2 / 2 &
min (
(d2 / 2),
R1)
<= R1 )
by A8, XXREAL_0:17, XXREAL_0:21;
x0 - R1 <= x0 - (min ((d2 / 2),R1))
by XXREAL_0:17, XREAL_1:10;
then A49:
[.(x0 - (min ((d2 / 2),R1))),x0.] c= [.(x0 - R1),x0.]
by XXREAL_1:34;
take
min (
(d2 / 2),
R1)
;
( min ((d2 / 2),R1) > 0 & [.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1) )
thus
min (
(d2 / 2),
R1)
> 0
by A8, A47, XXREAL_0:21;
[.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1)
now for x being Real st x in [.(x0 - (min ((d2 / 2),R1))),x0.] holds
x in dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1)let x be
Real;
( x in [.(x0 - (min ((d2 / 2),R1))),x0.] implies x in dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1) )assume A50:
x in [.(x0 - (min ((d2 / 2),R1))),x0.]
;
x in dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1)then A51:
x in dom (f1 | I)
by A8, A49;
then A52:
(
x in dom f1 &
x in I )
by RELAT_1:57;
then A53:
f1 . x in f1 .: I
by FUNCT_1:def 6;
(
J = [.(inf J),(sup J).] or
J = ].(inf J),(sup J).] )
by A11, A37, Lm24;
then A54:
f1 . x <= (f1 | I) . x0
by A3, A37, A53, XXREAL_1:1, XXREAL_1:2;
A55:
(
x0 - (min ((d2 / 2),R1)) <= x &
x <= x0 )
by A50, XXREAL_1:1;
then
|.(x - x0).| = - (x - x0)
by ABSVALUE:30, XREAL_1:47;
then
|.(x - x0).| <= - (- (min ((d2 / 2),R1)))
by A55, XREAL_1:19, XREAL_1:24;
then
|.(x - x0).| <= d2 / 2
by A48, XXREAL_0:2;
then A56:
|.(x - x0).| < d2
by A47, XXREAL_0:2;
x in ].-infty,x0.]
by A55, XXREAL_1:234;
then A57:
x in left_closed_halfline x0
by LIMFUNC1:def 1;
then
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < min (
(r1 / 2),
R2)
by A46, A56, A51, RELAT_1:57;
then A58:
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| < r1 / 2
by A45, XXREAL_0:2;
x in dom ((f1 | I) | (left_closed_halfline x0))
by A51, A57, RELAT_1:57;
then A59:
(
((f1 | I) | (left_closed_halfline x0)) . x = (f1 | I) . x &
(f1 | I) . x = f1 . x )
by A50, A8, A49, FUNCT_1:47;
then
((f1 | I) | (left_closed_halfline x0)) . x0 >= ((f1 | I) | (left_closed_halfline x0)) . x
by A54, A12, FUNCT_1:49;
then
|.((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0)).| = - ((((f1 | I) | (left_closed_halfline x0)) . x) - (((f1 | I) | (left_closed_halfline x0)) . x0))
by ABSVALUE:30, XREAL_1:47;
then
(((f1 | I) | (left_closed_halfline x0)) . x0) - (((f1 | I) | (left_closed_halfline x0)) . x) < r1
by A58, A44, XXREAL_0:2;
then
((f1 | I) | (left_closed_halfline x0)) . x0 < (((f1 | I) | (left_closed_halfline x0)) . x) + r1
by XREAL_1:19;
then
(((f1 | I) | (left_closed_halfline x0)) . x0) - r1 < ((f1 | I) | (left_closed_halfline x0)) . x
by XREAL_1:19;
hence
x in dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1)
by A52, A9, A13, A54, A59, FUNCT_1:54, XXREAL_1:1;
verum end;
hence
[.(x0 - (min ((d2 / 2),R1))),x0.] c= dom ([.((f1 . x0) - r1),(f1 . x0).] |` f1)
;
verum
end; hence
f2 * f1 is_left_differentiable_in x0
by A6, A4, A5, A1, A39, Th46;
Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 Ldiff (
(f2 * f1),
x0) =
(Ldiff (f2,(f1 . x0))) * (Ldiff (f1,x0))
by A6, A4, A5, A1, A39, A42, Th46
.=
(Ldiff (f2,(f1 . x0))) * ((f1 `\ I) . x0)
by A4, A5, A1, Def2
.=
((f2 `\ J) . (f1 . x0)) * ((f1 `\ I) . x0)
by A9, A2, A3, A10, A37, Def2
.=
(((f2 `\ J) * f1) . x0) * ((f1 `\ I) . x0)
by A5, A1, FUNCT_1:13
;
hence
Ldiff (
(f2 * f1),
x0)
= (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0
by VALUED_1:5;
verum end; suppose A60:
(
(f1 | I) . x0 <> inf J &
(f1 | I) . x0 <> sup J )
;
( f2 * f1 is_left_differentiable_in x0 & Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 )then
(f1 | I) . x0 in ].(inf J),(sup J).[
by A11, Th3;
then A61:
f2 is_differentiable_in (f1 | I) . x0
by A11, A2, Th11;
hence
f2 * f1 is_left_differentiable_in x0
by A6, A4, A5, A9, A1, Th41;
Ldiff ((f2 * f1),x0) = (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0 Ldiff (
(f2 * f1),
x0) =
(diff (f2,(f1 . x0))) * (Ldiff (f1,x0))
by A61, A9, A6, A4, A5, A1, Th41
.=
(diff (f2,(f1 . x0))) * ((f1 `\ I) . x0)
by A4, A5, A1, Def2
.=
((f2 `\ J) . (f1 . x0)) * ((f1 `\ I) . x0)
by A2, A3, A10, A60, A9, Def2
.=
(((f2 `\ J) * f1) . x0) * ((f1 `\ I) . x0)
by A5, A1, FUNCT_1:13
;
hence
Ldiff (
(f2 * f1),
x0)
= (((f2 `\ J) * f1) (#) (f1 `\ I)) . x0
by VALUED_1:5;
verum end; end;