let Z be open Subset of REAL ; :: thesis: ( Z c= dom (((id Z) ^ ) (#) ln ) & ( for x being Real st x in Z holds
x > 0 ) implies ( ((id Z) ^ ) (#) ln is_differentiable_on Z & ( for x being Real st x in Z holds
((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x)) ) ) )

set f = id Z;
set g = ln ;
assume A1: ( Z c= dom (((id Z) ^ ) (#) ln ) & ( for x being Real st x in Z holds
x > 0 ) ) ; :: thesis: ( ((id Z) ^ ) (#) ln is_differentiable_on Z & ( for x being Real st x in Z holds
((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x)) ) )

then Z c= (dom ((id Z) ^ )) /\ (dom ln ) by VALUED_1:def 4;
then A2: ( Z c= dom ((id Z) ^ ) & Z c= dom ln ) by XBOOLE_1:18;
B: for x being Real st x in Z holds
(id Z) . x = x by FUNCT_1:35;
A: not 0 in Z by A1;
A7: ( (id Z) ^ is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) ^ ) `| Z) . x = - (1 / (x ^2 )) ) ) by Th4, A;
A8: ( ln is_differentiable_on Z & ( for x being Real st x in Z holds
(ln `| Z) . x = 1 / x ) ) by A2, Th19;
now
let x be Real; :: thesis: ( x in Z implies ((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x)) )
assume A9: x in Z ; :: thesis: ((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x))
then ((((id Z) ^ ) (#) ln ) `| Z) . x = ((ln . x) * (diff ((id Z) ^ ),x)) + ((((id Z) ^ ) . x) * (diff ln ,x)) by A1, A7, A8, FDIFF_1:29
.= ((ln . x) * ((((id Z) ^ ) `| Z) . x)) + ((((id Z) ^ ) . x) * (diff ln ,x)) by A7, A9, FDIFF_1:def 8
.= ((ln . x) * (- (1 / (x ^2 )))) + ((((id Z) ^ ) . x) * (diff ln ,x)) by A9, Th4, A
.= ((ln . x) * (- (1 / (x ^2 )))) + ((((id Z) ^ ) . x) * ((ln `| Z) . x)) by A8, A9, FDIFF_1:def 8
.= ((ln . x) * (- (1 / (x ^2 )))) + ((((id Z) ^ ) . x) * (1 / x)) by A2, A9, Th19
.= ((ln . x) * (- (1 / (x ^2 )))) + ((((id Z) . x) " ) * (1 / x)) by A2, A9, RFUNCT_1:def 8
.= ((ln . x) * (- (1 / (x ^2 )))) + ((1 * (x " )) * (1 / x)) by A9, B
.= (- ((1 / (x ^2 )) * (ln . x))) + ((1 / x) * (1 / x)) by XCMPLX_0:def 9
.= (- ((1 / (x ^2 )) * (ln . x))) + (1 / (x ^2 )) by XCMPLX_1:103
.= (1 / (x ^2 )) * (1 - (ln . x)) ;
hence ((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x)) ; :: thesis: verum
end;
hence ( ((id Z) ^ ) (#) ln is_differentiable_on Z & ( for x being Real st x in Z holds
((((id Z) ^ ) (#) ln ) `| Z) . x = (1 / (x ^2 )) * (1 - (ln . x)) ) ) by A1, A7, A8, FDIFF_1:29; :: thesis: verum