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

assume A1: Z c= dom (ln (#) cosec) ; :: thesis: ( ln (#) cosec is_differentiable_on Z & ( for x being Real st x in Z holds
((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2)) ) )

then A2: Z c= (dom ln) /\ (dom cosec) by VALUED_1:def 4;
then A3: Z c= dom cosec by XBOOLE_1:18;
A4: for x being Real st x in Z holds
( cosec is_differentiable_in x & diff (cosec,x) = - ((cos . x) / ((sin . x) ^2)) )
proof
let x be Real; :: thesis: ( x in Z implies ( cosec is_differentiable_in x & diff (cosec,x) = - ((cos . x) / ((sin . x) ^2)) ) )
assume x in Z ; :: thesis: ( cosec is_differentiable_in x & diff (cosec,x) = - ((cos . x) / ((sin . x) ^2)) )
then sin . x <> 0 by A3, RFUNCT_1:3;
hence ( cosec is_differentiable_in x & diff (cosec,x) = - ((cos . x) / ((sin . x) ^2)) ) by Th2; :: thesis: verum
end;
then for x being Real st x in Z holds
cosec is_differentiable_in x ;
then A5: cosec is_differentiable_on Z by A3, FDIFF_1:9;
A6: Z c= dom ln by A2, XBOOLE_1:18;
A7: 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 A6, TAYLOR_1:18;
then ex g being Real st
( x = g & 0 < g ) by Lm1;
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 A8: ln is_differentiable_on Z by A6, FDIFF_1:9;
A9: 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 A7;
then x in right_open_halfline 0 by Lm1;
hence diff (ln,x) = 1 / x by TAYLOR_1:18; :: thesis: verum
end;
for x being Real st x in Z holds
((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2))
proof
let x be Real; :: thesis: ( x in Z implies ((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2)) )
assume A10: x in Z ; :: thesis: ((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2))
then ((ln (#) cosec) `| Z) . x = ((cosec . x) * (diff (ln,x))) + ((ln . x) * (diff (cosec,x))) by A1, A8, A5, FDIFF_1:21
.= ((cosec . x) * (1 / x)) + ((ln . x) * (diff (cosec,x))) by A9, A10
.= ((cosec . x) * (1 / x)) + ((ln . x) * (- ((cos . x) / ((sin . x) ^2)))) by A4, A10
.= ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2)) by A3, A10, RFUNCT_1:def 2 ;
hence ((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2)) ; :: thesis: verum
end;
hence ( ln (#) cosec is_differentiable_on Z & ( for x being Real st x in Z holds
((ln (#) cosec) `| Z) . x = ((1 / (sin . x)) / x) - (((ln . x) * (cos . x)) / ((sin . x) ^2)) ) ) by A1, A8, A5, FDIFF_1:21; :: thesis: verum