double code(double v) {
return ((double) acos(((double) (((double) (1.0 - ((double) (5.0 * ((double) (v * v)))))) / ((double) (((double) (v * v)) - 1.0))))));
}
double code(double v) {
return ((double) acos(((double) cbrt(((double) pow(((double) (((double) (1.0 - ((double) (5.0 * ((double) (v * v)))))) / ((double) (((double) (v * v)) - 1.0)))), 3.0))))));
}



Bits error versus v
Results
Initial program 0.5
rmApplied add-cbrt-cube0.6
Applied add-cbrt-cube0.6
Applied cbrt-undiv0.6
Simplified0.6
Final simplification0.6
herbie shell --seed 2020192
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 1"
:precision binary64
(acos (/ (- 1.0 (* 5.0 (* v v))) (- (* v v) 1.0))))