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

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

A2: for x being Real st x in Z holds
cot . x > 0
proof
let x be Real; :: thesis: ( x in Z implies cot . x > 0 )
assume x in Z ; :: thesis: cot . x > 0
then cot . x in right_open_halfline 0 by A1, FUNCT_1:11, TAYLOR_1:18;
then ex g being Real st
( cot . x = g & 0 < g ) by Lm1;
hence cot . x > 0 ; :: thesis: verum
end;
dom (ln * cot) c= dom cot by RELAT_1:25;
then A3: Z c= dom cot by A1, XBOOLE_1:1;
A4: for x being Real st x in Z holds
sin . x <> 0
proof
let x be Real; :: thesis: ( x in Z implies sin . x <> 0 )
assume x in Z ; :: thesis: sin . x <> 0
then x in dom (cos / sin) by A1, FUNCT_1:11;
hence sin . x <> 0 by Th2; :: thesis: verum
end;
A5: for x being Real st x in Z holds
cot is_differentiable_in x
proof end;
A6: for x being Real st x in Z holds
ln * cot is_differentiable_in x
proof end;
then A7: ln * cot is_differentiable_on Z by A1, FDIFF_1:9;
for x being Real st x in Z holds
((ln * cot) `| Z) . x = - (1 / ((sin . x) * (cos . x)))
proof
let x be Real; :: thesis: ( x in Z implies ((ln * cot) `| Z) . x = - (1 / ((sin . x) * (cos . x))) )
assume A8: x in Z ; :: thesis: ((ln * cot) `| Z) . x = - (1 / ((sin . x) * (cos . x)))
then A9: sin . x <> 0 by A4;
( cot is_differentiable_in x & cot . x > 0 ) by A2, A5, A8;
then diff ((ln * cot),x) = (diff (cot,x)) / (cot . x) by TAYLOR_1:20
.= (- (1 / ((sin . x) ^2))) / (cot . x) by A9, FDIFF_7:47
.= - ((1 / ((sin . x) ^2)) / (cot . x))
.= - (1 / (((sin . x) ^2) * (cot . x))) by XCMPLX_1:78
.= - (1 / (((sin . x) ^2) * ((cos . x) / (sin . x)))) by A3, A8, RFUNCT_1:def 1
.= - (1 / ((((sin . x) ^2) * (cos . x)) / (sin . x)))
.= - ((sin . x) / (((sin . x) ^2) * (cos . x))) by XCMPLX_1:57
.= - (((sin . x) / ((sin . x) ^2)) / (cos . x)) by XCMPLX_1:78
.= - ((((sin . x) / (sin . x)) / (sin . x)) / (cos . x)) by XCMPLX_1:78
.= - ((1 / (sin . x)) / (cos . x)) by A4, A8, XCMPLX_1:60
.= - (1 / ((sin . x) * (cos . x))) by XCMPLX_1:78 ;
hence ((ln * cot) `| Z) . x = - (1 / ((sin . x) * (cos . x))) by A7, A8, FDIFF_1:def 7; :: thesis: verum
end;
hence ( ln * cot is_differentiable_on Z & ( for x being Real st x in Z holds
((ln * cot) `| Z) . x = - (1 / ((sin . x) * (cos . x))) ) ) by A1, A6, FDIFF_1:9; :: thesis: verum