let Z be open Subset of REAL; :: thesis: ( Z c= dom (ln (#) sin) implies ( ln (#) sin is_differentiable_on Z & ( for x being Real st x in Z holds
((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x)) ) ) )

A1: for x being Real st x in Z holds
sin is_differentiable_in x by SIN_COS:64;
assume A2: Z c= dom (ln (#) sin) ; :: thesis: ( ln (#) sin is_differentiable_on Z & ( for x being Real st x in Z holds
((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x)) ) )

then A3: Z c= (dom ln) /\ (dom sin) by VALUED_1:def 4;
then Z c= dom sin by XBOOLE_1:18;
then A4: sin is_differentiable_on Z by A1, FDIFF_1:9;
A5: Z c= dom ln by A3, XBOOLE_1:18;
A6: for x being Real st x in Z holds
x > 0
proof
let x be Real; :: thesis: ( x in Z implies x > 0 )
assume x in Z ; :: thesis: x > 0
then x in right_open_halfline 0 by A5, TAYLOR_1:18;
then x in { g where g is Real : 0 < g } by XXREAL_1:230;
then ex g being Real st
( x = g & 0 < g ) ;
hence x > 0 ; :: thesis: verum
end;
then for x being Real st x in Z holds
ln is_differentiable_in x by TAYLOR_1:18;
then A7: ln is_differentiable_on Z by A5, FDIFF_1:9;
A8: for x being Real st x in Z holds
diff (ln,x) = 1 / x
proof
let x be Real; :: thesis: ( x in Z implies diff (ln,x) = 1 / x )
assume x in Z ; :: thesis: diff (ln,x) = 1 / x
then x > 0 by A6;
then x in { g where g is Real : 0 < g } ;
then x in right_open_halfline 0 by XXREAL_1:230;
hence diff (ln,x) = 1 / x by TAYLOR_1:18; :: thesis: verum
end;
for x being Real st x in Z holds
((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x))
proof
let x be Real; :: thesis: ( x in Z implies ((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x)) )
assume A9: x in Z ; :: thesis: ((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x))
then ((ln (#) sin) `| Z) . x = ((sin . x) * (diff (ln,x))) + ((ln . x) * (diff (sin,x))) by A2, A7, A4, FDIFF_1:21
.= ((sin . x) * (1 / x)) + ((ln . x) * (diff (sin,x))) by A8, A9
.= ((sin . x) / x) + ((ln . x) * (cos . x)) by SIN_COS:64 ;
hence ((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x)) ; :: thesis: verum
end;
hence ( ln (#) sin is_differentiable_on Z & ( for x being Real st x in Z holds
((ln (#) sin) `| Z) . x = ((sin . x) / x) + ((ln . x) * (cos . x)) ) ) by A2, A7, A4, FDIFF_1:21; :: thesis: verum