2 \cdot \tan^{-1} \left(\sqrt{\frac{1 - x}{1 + x}}\right)2 \cdot \tan^{-1} \left(\sqrt{\left(\frac{1}{x \cdot x - 1 \cdot 1} \cdot \left(x - 1\right) - {\left(\frac{\sqrt[3]{x}}{\sqrt[3]{x + 1}}\right)}^{3}\right) + \frac{1}{\sqrt[3]{x + 1} \cdot \sqrt[3]{x + 1}} \cdot \left(\left(-\frac{x}{\sqrt[3]{x + 1}}\right) + \frac{x}{\sqrt[3]{x + 1}}\right)}\right)double f(double x) {
double r20439 = 2.0;
double r20440 = 1.0;
double r20441 = x;
double r20442 = r20440 - r20441;
double r20443 = r20440 + r20441;
double r20444 = r20442 / r20443;
double r20445 = sqrt(r20444);
double r20446 = atan(r20445);
double r20447 = r20439 * r20446;
return r20447;
}
double f(double x) {
double r20448 = 2.0;
double r20449 = 1.0;
double r20450 = x;
double r20451 = r20450 * r20450;
double r20452 = r20449 * r20449;
double r20453 = r20451 - r20452;
double r20454 = r20449 / r20453;
double r20455 = r20450 - r20449;
double r20456 = r20454 * r20455;
double r20457 = cbrt(r20450);
double r20458 = r20450 + r20449;
double r20459 = cbrt(r20458);
double r20460 = r20457 / r20459;
double r20461 = 3.0;
double r20462 = pow(r20460, r20461);
double r20463 = r20456 - r20462;
double r20464 = 1.0;
double r20465 = r20459 * r20459;
double r20466 = r20464 / r20465;
double r20467 = r20450 / r20459;
double r20468 = -r20467;
double r20469 = r20468 + r20467;
double r20470 = r20466 * r20469;
double r20471 = r20463 + r20470;
double r20472 = sqrt(r20471);
double r20473 = atan(r20472);
double r20474 = r20448 * r20473;
return r20474;
}



Bits error versus x
Results
Initial program 0.0
rmApplied div-sub0.0
Simplified0.0
Simplified0.0
rmApplied add-cube-cbrt0.0
Applied add-cube-cbrt0.0
Applied times-frac0.0
Applied flip-+0.0
Applied associate-/r/0.0
Applied prod-diff0.0
Simplified0.0
Simplified0.0
Final simplification0.0
herbie shell --seed 2020049 +o rules:numerics
(FPCore (x)
:name "arccos"
:precision binary64
(* 2 (atan (sqrt (/ (- 1 x) (+ 1 x))))))