\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\cos^{-1} \left(-1 + v \cdot \left(4 \cdot \left(v + {v}^{3}\right)\right)\right)(FPCore (v) :precision binary64 (acos (/ (- 1.0 (* 5.0 (* v v))) (- (* v v) 1.0))))
(FPCore (v) :precision binary64 (acos (+ -1.0 (* v (* 4.0 (+ v (pow v 3.0)))))))
double code(double v) {
return acos((1.0 - (5.0 * (v * v))) / ((v * v) - 1.0));
}
double code(double v) {
return acos(-1.0 + (v * (4.0 * (v + pow(v, 3.0)))));
}







Bits error versus v
Results
| Alternative 1 | |
|---|---|
| Error | 0.6 |
| Cost | 7232 |
| Alternative 2 | |
|---|---|
| Error | 0.9 |
| Cost | 6848 |
| Alternative 3 | |
|---|---|
| Error | 1.3 |
| Cost | 6464 |
| Alternative 4 | |
|---|---|
| Error | 52.7 |
| Cost | 64 |


Initial program 0.6
Taylor expanded around 0 0.7
Simplified0.7
rmApplied add-sqr-sqrt_binary64_24870.7
Taylor expanded around 0 0.7
Simplified0.7
Simplified0.7
Final simplification0.7
herbie shell --seed 2021045
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 1"
:precision binary64
(acos (/ (- 1.0 (* 5.0 (* v v))) (- (* v v) 1.0))))