\cos^{-1} \left(\frac{1 - 5 \cdot \left(v \cdot v\right)}{v \cdot v - 1}\right)\cos^{-1} \left(\frac{1 - 125 \cdot {v}^{6}}{\left(5 \cdot {v}^{2} + \left(25 \cdot {v}^{4} + 1\right)\right) \cdot \left({v}^{2} - 1\right)}\right)double f(double v) {
double r266671 = 1.0;
double r266672 = 5.0;
double r266673 = v;
double r266674 = r266673 * r266673;
double r266675 = r266672 * r266674;
double r266676 = r266671 - r266675;
double r266677 = r266674 - r266671;
double r266678 = r266676 / r266677;
double r266679 = acos(r266678);
return r266679;
}
double f(double v) {
double r266680 = 1.0;
double r266681 = 125.0;
double r266682 = v;
double r266683 = 6.0;
double r266684 = pow(r266682, r266683);
double r266685 = r266681 * r266684;
double r266686 = r266680 - r266685;
double r266687 = 5.0;
double r266688 = 2.0;
double r266689 = pow(r266682, r266688);
double r266690 = r266687 * r266689;
double r266691 = 25.0;
double r266692 = 4.0;
double r266693 = pow(r266682, r266692);
double r266694 = r266691 * r266693;
double r266695 = r266694 + r266680;
double r266696 = r266690 + r266695;
double r266697 = r266689 - r266680;
double r266698 = r266696 * r266697;
double r266699 = r266686 / r266698;
double r266700 = acos(r266699);
return r266700;
}



Bits error versus v
Results
Initial program 0.6
rmApplied flip3--0.6
Simplified0.6
rmApplied add-sqr-sqrt1.5
Taylor expanded around 0 1.5
Taylor expanded around 0 0.6
Final simplification0.6
herbie shell --seed 2019362
(FPCore (v)
:name "Falkner and Boettcher, Appendix B, 1"
:precision binary64
(acos (/ (- 1 (* 5 (* v v))) (- (* v v) 1))))