r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{\sin b \cdot r}{\cos a \cdot \cos b - \log \left(e^{\sin b \cdot \sin a}\right)}(FPCore (r a b) :precision binary64 (* r (/ (sin b) (cos (+ a b)))))
(FPCore (r a b) :precision binary64 (/ (* (sin b) r) (- (* (cos a) (cos b)) (log (exp (* (sin b) (sin a)))))))
double code(double r, double a, double b) {
return r * (sin(b) / cos(a + b));
}
double code(double r, double a, double b) {
return (sin(b) * r) / ((cos(a) * cos(b)) - log(exp(sin(b) * sin(a))));
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 14.6
rmApplied cos-sum_binary640.3
rmApplied associate-*r/_binary640.3
Simplified0.3
rmApplied add-log-exp_binary640.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020253
(FPCore (r a b)
:name "rsin B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))