r + \left(1 - r\right) \cdot {\left(1 - \cos x\right)}^{5}r + \left(1 - r\right) \cdot {\left(1 - \cos x\right)}^{5}double code(double r, double x) {
return ((double) (r + ((double) (((double) (1.0 - r)) * ((double) pow(((double) (1.0 - ((double) cos(x)))), 5.0))))));
}
double code(double r, double x) {
return ((double) (r + ((double) (((double) (1.0 - r)) * ((double) pow(((double) (1.0 - ((double) cos(x)))), 5.0))))));
}



Bits error versus r



Bits error versus x
Results
Initial program 1.2
Final simplification1.2
herbie shell --seed 2020152
(FPCore (r x)
:name "(+ r (* (- 1 r) (pow (- 1 (cos x)) 5)))"
:precision binary64
(+ r (* (- 1.0 r) (pow (- 1.0 (cos x)) 5.0))))