2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)2 \cdot \tan^{-1} \left(\left|\frac{\sqrt{1 \cdot 1 - x \cdot x}}{1 + x}\right|\right)double f(double x) {
double r7208 = 2.0;
double r7209 = 1.0;
double r7210 = x;
double r7211 = r7209 - r7210;
double r7212 = r7209 + r7210;
double r7213 = r7211 / r7212;
double r7214 = sqrt(r7213);
double r7215 = atan(r7214);
double r7216 = r7208 * r7215;
return r7216;
}
double f(double x) {
double r7217 = 2.0;
double r7218 = 1.0;
double r7219 = r7218 * r7218;
double r7220 = x;
double r7221 = r7220 * r7220;
double r7222 = r7219 - r7221;
double r7223 = sqrt(r7222);
double r7224 = r7218 + r7220;
double r7225 = r7223 / r7224;
double r7226 = fabs(r7225);
double r7227 = atan(r7226);
double r7228 = r7217 * r7227;
return r7228;
}



Bits error versus x
Results
Initial program 0.0
rmApplied add-sqr-sqrt0.0
Applied add-sqr-sqrt0.0
Applied times-frac0.0
Applied rem-sqrt-square0.0
rmApplied flip--0.0
Applied sqrt-div0.0
Applied associate-/l/0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020059
(FPCore (x)
:name "arccos"
:precision binary64
(* 2 (atan (sqrt (/ (- 1 x) (+ 1 x))))))