let a be Real; :: thesis: for Z being open Subset of REAL
for f being PartFunc of REAL,REAL st Z c= dom ((id Z) (#) (arccos * f)) & ( for x being Real st x in Z holds
( f . x = x / a & f . x > - 1 & f . x < 1 ) ) holds
( (id Z) (#) (arccos * f) is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ) )

let Z be open Subset of REAL; :: thesis: for f being PartFunc of REAL,REAL st Z c= dom ((id Z) (#) (arccos * f)) & ( for x being Real st x in Z holds
( f . x = x / a & f . x > - 1 & f . x < 1 ) ) holds
( (id Z) (#) (arccos * f) is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ) )

let f be PartFunc of REAL,REAL; :: thesis: ( Z c= dom ((id Z) (#) (arccos * f)) & ( for x being Real st x in Z holds
( f . x = x / a & f . x > - 1 & f . x < 1 ) ) implies ( (id Z) (#) (arccos * f) is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ) ) )

assume that
A1: Z c= dom ((id Z) (#) (arccos * f)) and
A2: for x being Real st x in Z holds
( f . x = x / a & f . x > - 1 & f . x < 1 ) ; :: thesis: ( (id Z) (#) (arccos * f) is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ) )

A3: Z c= (dom (id Z)) /\ (dom (arccos * f)) by A1, VALUED_1:def 4;
then A4: Z c= dom (id Z) by XBOOLE_1:18;
A5: Z c= dom (arccos * f) by A3, XBOOLE_1:18;
for x being Real st x in Z holds
f . x = ((1 / a) * x) + 0
proof
let x be Real; :: thesis: ( x in Z implies f . x = ((1 / a) * x) + 0 )
assume x in Z ; :: thesis: f . x = ((1 / a) * x) + 0
then f . x = x / a by A2;
hence f . x = ((1 / a) * x) + 0 by XCMPLX_1:99; :: thesis: verum
end;
then A6: for x being Real st x in Z holds
( f . x = ((1 / a) * x) + 0 & f . x > - 1 & f . x < 1 ) by A2;
then A7: arccos * f is_differentiable_on Z by A5, Th15;
A8: for x being Real st x in Z holds
(id Z) . x = (1 * x) + 0 by FUNCT_1:18;
then A9: id Z is_differentiable_on Z by A4, FDIFF_1:23;
A10: for x being Real st x in Z holds
((arccos * f) `| Z) . x = - (1 / (a * (sqrt (1 - ((x / a) ^2)))))
proof
let x be Real; :: thesis: ( x in Z implies ((arccos * f) `| Z) . x = - (1 / (a * (sqrt (1 - ((x / a) ^2))))) )
assume x in Z ; :: thesis: ((arccos * f) `| Z) . x = - (1 / (a * (sqrt (1 - ((x / a) ^2)))))
then ((arccos * f) `| Z) . x = - ((1 / a) / (sqrt (1 - ((((1 / a) * x) + 0) ^2)))) by A6, A5, Th15
.= - ((1 / a) / (sqrt (1 - ((x / a) ^2)))) by XCMPLX_1:99
.= - (1 / (a * (sqrt (1 - ((x / a) ^2))))) by XCMPLX_1:78 ;
hence ((arccos * f) `| Z) . x = - (1 / (a * (sqrt (1 - ((x / a) ^2))))) ; :: thesis: verum
end;
for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2)))))
proof
let x be Real; :: thesis: ( x in Z implies (((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) )
assume A11: x in Z ; :: thesis: (((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2)))))
then A12: (arccos * f) . x = arccos . (f . x) by A5, FUNCT_1:12
.= arccos . (x / a) by A2, A11 ;
(((id Z) (#) (arccos * f)) `| Z) . x = (((arccos * f) . x) * (diff ((id Z),x))) + (((id Z) . x) * (diff ((arccos * f),x))) by A1, A9, A7, A11, FDIFF_1:21
.= (((arccos * f) . x) * (((id Z) `| Z) . x)) + (((id Z) . x) * (diff ((arccos * f),x))) by A9, A11, FDIFF_1:def 7
.= (((arccos * f) . x) * 1) + (((id Z) . x) * (diff ((arccos * f),x))) by A4, A8, A11, FDIFF_1:23
.= (((arccos * f) . x) * 1) + (((id Z) . x) * (((arccos * f) `| Z) . x)) by A7, A11, FDIFF_1:def 7
.= ((arccos * f) . x) + (x * (((arccos * f) `| Z) . x)) by A11, FUNCT_1:18
.= (arccos . (x / a)) + (x * (- (1 / (a * (sqrt (1 - ((x / a) ^2))))))) by A10, A11, A12
.= (arccos . (x / a)) - (x * (1 / (a * (sqrt (1 - ((x / a) ^2))))))
.= (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) by XCMPLX_1:99 ;
hence (((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ; :: thesis: verum
end;
hence ( (id Z) (#) (arccos * f) is_differentiable_on Z & ( for x being Real st x in Z holds
(((id Z) (#) (arccos * f)) `| Z) . x = (arccos . (x / a)) - (x / (a * (sqrt (1 - ((x / a) ^2))))) ) ) by A1, A9, A7, FDIFF_1:21; :: thesis: verum