\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\sqrt{\cos^{-1} \left(\frac{1}{v \cdot v - 1} - \frac{5}{\frac{v \cdot v - 1}{v \cdot v}}\right) \cdot \cos^{-1} \left(\frac{1 - \left(v \cdot v\right) \cdot 5}{v \cdot v - 1}\right)}double f(double v) {
double r5983042 = 1.0;
double r5983043 = 5.0;
double r5983044 = v;
double r5983045 = r5983044 * r5983044;
double r5983046 = r5983043 * r5983045;
double r5983047 = r5983042 - r5983046;
double r5983048 = r5983045 - r5983042;
double r5983049 = r5983047 / r5983048;
double r5983050 = acos(r5983049);
return r5983050;
}
double f(double v) {
double r5983051 = 1.0;
double r5983052 = v;
double r5983053 = r5983052 * r5983052;
double r5983054 = r5983053 - r5983051;
double r5983055 = r5983051 / r5983054;
double r5983056 = 5.0;
double r5983057 = r5983054 / r5983053;
double r5983058 = r5983056 / r5983057;
double r5983059 = r5983055 - r5983058;
double r5983060 = acos(r5983059);
double r5983061 = r5983053 * r5983056;
double r5983062 = r5983051 - r5983061;
double r5983063 = r5983062 / r5983054;
double r5983064 = acos(r5983063);
double r5983065 = r5983060 * r5983064;
double r5983066 = sqrt(r5983065);
return r5983066;
}



Bits error versus v
Results
Initial program 0.5
rmApplied add-cbrt-cube0.6
rmApplied add-sqr-sqrt1.5
Taylor expanded around 0 1.5
Simplified1.5
rmApplied sqrt-unprod0.6
Simplified0.5
Final simplification0.5
herbie shell --seed 2019172
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 1"
(acos (/ (- 1.0 (* 5.0 (* v v))) (- (* v v) 1.0))))