let p be Real; :: thesis: for f being one-to-one PartFunc of REAL ,REAL st right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds
0 < diff f,x0 or for x0 being Real st x0 in right_open_halfline p holds
diff f,x0 < 0 ) holds
( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) " ) & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) " ) holds
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0)) ) )
let f be one-to-one PartFunc of REAL ,REAL ; :: thesis: ( right_open_halfline p c= dom f & f is_differentiable_on right_open_halfline p & ( for x0 being Real st x0 in right_open_halfline p holds
0 < diff f,x0 or for x0 being Real st x0 in right_open_halfline p holds
diff f,x0 < 0 ) implies ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) " ) & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) " ) holds
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0)) ) ) )
set l = right_open_halfline p;
assume that
A0:
right_open_halfline p c= dom f
and
A1:
f is_differentiable_on right_open_halfline p
and
A2:
( for x0 being Real st x0 in right_open_halfline p holds
0 < diff f,x0 or for x0 being Real st x0 in right_open_halfline p holds
diff f,x0 < 0 )
; :: thesis: ( f | (right_open_halfline p) is one-to-one & (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) " ) & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) " ) holds
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0)) ) )
A3:
rng (f | (right_open_halfline p)) is open
by A1, A2, Th43, A0;
set f1 = f | (right_open_halfline p);
thus
f | (right_open_halfline p) is one-to-one
; :: thesis: ( (f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) " ) & ( for x0 being Real st x0 in dom ((f | (right_open_halfline p)) " ) holds
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0)) ) )
A4:
( dom ((f | (right_open_halfline p)) " ) = rng (f | (right_open_halfline p)) & rng ((f | (right_open_halfline p)) " ) = dom (f | (right_open_halfline p)) )
by FUNCT_1:55;
A5:
for y0 being Real st y0 in dom ((f | (right_open_halfline p)) " ) holds
( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff ((f | (right_open_halfline p)) " ),y0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) )
proof
let y0 be
Real;
:: thesis: ( y0 in dom ((f | (right_open_halfline p)) " ) implies ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff ((f | (right_open_halfline p)) " ),y0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) ) )
assume A6:
y0 in dom ((f | (right_open_halfline p)) " )
;
:: thesis: ( (f | (right_open_halfline p)) " is_differentiable_in y0 & diff ((f | (right_open_halfline p)) " ),y0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) )
then consider x0 being
Real such that A7:
(
x0 in dom (f | (right_open_halfline p)) &
y0 = (f | (right_open_halfline p)) . x0 )
by A4, PARTFUN1:26;
A8:
ex
N being
Neighbourhood of
y0 st
N c= dom ((f | (right_open_halfline p)) " )
by A3, A4, A6, RCOMP_1:39;
for
h being
convergent_to_0 Real_Sequence for
c being
V8()
Real_Sequence st
rng c = {y0} &
rng (h + c) c= dom ((f | (right_open_halfline p)) " ) holds
(
(h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) is
convergent &
lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) = 1
/ (diff f,(((f | (right_open_halfline p)) " ) . y0)) )
proof
let h be
convergent_to_0 Real_Sequence;
:: thesis: for c being V8() Real_Sequence st rng c = {y0} & rng (h + c) c= dom ((f | (right_open_halfline p)) " ) holds
( (h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) is convergent & lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) )let c be
V8()
Real_Sequence;
:: thesis: ( rng c = {y0} & rng (h + c) c= dom ((f | (right_open_halfline p)) " ) implies ( (h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) is convergent & lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) ) )
assume A9:
(
rng c = {y0} &
rng (h + c) c= dom ((f | (right_open_halfline p)) " ) )
;
:: thesis: ( (h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) is convergent & lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0)) )
reconsider a =
NAT --> (((f | (right_open_halfline p)) " ) . y0) as
Real_Sequence by FUNCOP_1:57;
reconsider a =
a as
V8()
Real_Sequence ;
A10:
rng a = {(((f | (right_open_halfline p)) " ) . y0)}
defpred S1[
Element of
NAT ,
real number ]
means for
r1,
r2 being
real number st
r1 = (h + c) . $1 &
r2 = a . $1 holds
(
r1 = f . (r2 + $2) &
r2 + $2
in dom f &
r2 + $2
in dom (f | (right_open_halfline p)) );
A12:
for
n being
Element of
NAT ex
r being
Real st
S1[
n,
r]
proof
let n be
Element of
NAT ;
:: thesis: ex r being Real st S1[n,r]
(h + c) . n in rng (h + c)
by VALUED_0:28;
then consider g being
Real such that A13:
(
g in dom (f | (right_open_halfline p)) &
(h + c) . n = (f | (right_open_halfline p)) . g )
by A4, A9, PARTFUN1:26;
A14:
a . n =
((f | (right_open_halfline p)) " ) . ((f | (right_open_halfline p)) . x0)
by A7, FUNCOP_1:13
.=
x0
by A7, FUNCT_1:56
;
take r =
g - x0;
:: thesis: S1[n,r]
let r1,
r2 be
real number ;
:: thesis: ( r1 = (h + c) . n & r2 = a . n implies ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) ) )
assume A15:
(
r1 = (h + c) . n &
r2 = a . n )
;
:: thesis: ( r1 = f . (r2 + r) & r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) )
hence
r1 = f . (r2 + r)
by A13, A14, FUNCT_1:70;
:: thesis: ( r2 + r in dom f & r2 + r in dom (f | (right_open_halfline p)) )
g in (dom f) /\ (right_open_halfline p)
by A13, RELAT_1:90;
hence
(
r2 + r in dom f &
r2 + r in dom (f | (right_open_halfline p)) )
by A13, A14, A15, XBOOLE_0:def 4;
:: thesis: verum
end;
consider b being
Real_Sequence such that A16:
for
n being
Element of
NAT holds
S1[
n,
b . n]
from FUNCT_2:sch 3(A12);
A17:
(
h is
non-zero &
h is
convergent &
lim h = 0 )
by FDIFF_1:def 1;
then A20:
b is
non-zero
by SEQ_1:7;
A21:
(
h + c is
convergent &
lim (h + c) = y0 )
by A9, Th4;
A22:
(
f | (right_open_halfline p) is
increasing or
f | (right_open_halfline p) is
decreasing )
by A1, A2, Th33, Th34, A0;
X:
y0 in dom (((f | (right_open_halfline p)) " ) | (rng (f | (right_open_halfline p))))
by A4, A6, RELAT_1:98;
right_open_halfline p c= dom f
by A1, FDIFF_1:def 7;
then
((f | (right_open_halfline p)) " ) | (f .: (right_open_halfline p)) is
continuous
by A22, FCONT_3:27;
then
((f | (right_open_halfline p)) " ) | (rng (f | (right_open_halfline p))) is
continuous
by RELAT_1:148;
then
((f | (right_open_halfline p)) " ) | (rng (f | (right_open_halfline p))) is_continuous_in y0
by X, FCONT_1:def 2;
then
(f | (right_open_halfline p)) " is_continuous_in y0
by A4, RELAT_1:97;
then A23:
(
((f | (right_open_halfline p)) " ) /* (h + c) is
convergent &
((f | (right_open_halfline p)) " ) . y0 = lim (((f | (right_open_halfline p)) " ) /* (h + c)) )
by A9, A21, FCONT_1:def 1;
A25:
lim a =
a . 0
by SEQ_4:41
.=
((f | (right_open_halfline p)) " ) . y0
by FUNCOP_1:13
;
A26:
(((f | (right_open_halfline p)) " ) /* (h + c)) - a is
convergent
by A23, SEQ_2:25;
A27:
lim ((((f | (right_open_halfline p)) " ) /* (h + c)) - a) =
(((f | (right_open_halfline p)) " ) . y0) - (((f | (right_open_halfline p)) " ) . y0)
by A23, A25, SEQ_2:26
.=
0
;
A28:
rng (b + a) c= dom f
then
(
b is
convergent &
lim b = 0 )
by A26, A27, FUNCT_2:113;
then reconsider b =
b as
convergent_to_0 Real_Sequence by A20, FDIFF_1:def 1;
A32:
rng a c= dom f
then A35:
f /* a = c
by FUNCT_2:113;
then A36:
h = (f /* (b + a)) - (f /* a)
by FUNCT_2:113;
then A37:
(f /* (b + a)) - (f /* a) is
non-zero
by FDIFF_1:def 1;
A38:
rng c c= dom ((f | (right_open_halfline p)) " )
A39:
b " is
non-zero
by A20, SEQ_1:41;
then A42:
(h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) = ((b " ) (#) ((f /* (b + a)) - (f /* a))) "
by FUNCT_2:113;
A43:
(b " ) (#) ((f /* (b + a)) - (f /* a)) is
non-zero
by A37, A39, SEQ_1:43;
((f | (right_open_halfline p)) " ) . y0 in dom (f | (right_open_halfline p))
by A4, A6, FUNCT_1:def 5;
then
((f | (right_open_halfline p)) " ) . y0 in (dom f) /\ (right_open_halfline p)
by RELAT_1:90;
then A44:
((f | (right_open_halfline p)) " ) . y0 in right_open_halfline p
by XBOOLE_0:def 4;
then
(
f is_differentiable_in ((f | (right_open_halfline p)) " ) . y0 &
diff f,
(((f | (right_open_halfline p)) " ) . y0) = diff f,
(((f | (right_open_halfline p)) " ) . y0) )
by A1, FDIFF_1:16;
then A45:
(
(b " ) (#) ((f /* (b + a)) - (f /* a)) is
convergent &
lim ((b " ) (#) ((f /* (b + a)) - (f /* a))) = diff f,
(((f | (right_open_halfline p)) " ) . y0) )
by A10, A28, Th12;
A46:
0 <> diff f,
(((f | (right_open_halfline p)) " ) . y0)
by A2, A44;
hence
(h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c)) is
convergent
by A42, A43, A45, SEQ_2:35;
:: thesis: lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) = 1 / (diff f,(((f | (right_open_halfline p)) " ) . y0))
thus lim ((h " ) (#) ((((f | (right_open_halfline p)) " ) /* (h + c)) - (((f | (right_open_halfline p)) " ) /* c))) =
(diff f,(((f | (right_open_halfline p)) " ) . y0)) "
by A42, A43, A45, A46, SEQ_2:36
.=
1
/ (diff f,(((f | (right_open_halfline p)) " ) . y0))
by XCMPLX_1:217
;
:: thesis: verum
end;
hence
(
(f | (right_open_halfline p)) " is_differentiable_in y0 &
diff ((f | (right_open_halfline p)) " ),
y0 = 1
/ (diff f,(((f | (right_open_halfline p)) " ) . y0)) )
by A8, Th12;
:: thesis: verum
end;
then
for y0 being Real st y0 in dom ((f | (right_open_halfline p)) " ) holds
(f | (right_open_halfline p)) " is_differentiable_in y0
;
hence
(f | (right_open_halfline p)) " is_differentiable_on dom ((f | (right_open_halfline p)) " )
by A3, A4, FDIFF_1:16; :: thesis: for x0 being Real st x0 in dom ((f | (right_open_halfline p)) " ) holds
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0))
let x0 be Real; :: thesis: ( x0 in dom ((f | (right_open_halfline p)) " ) implies diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0)) )
assume
x0 in dom ((f | (right_open_halfline p)) " )
; :: thesis: diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0))
hence
diff ((f | (right_open_halfline p)) " ),x0 = 1 / (diff f,(((f | (right_open_halfline p)) " ) . x0))
by A5; :: thesis: verum