r \cdot \frac{\sin b}{\cos \left(a + b\right)}\sin b \cdot \frac{r}{\cos a \cdot \cos b - \sin b \cdot \sin a}(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)) (* (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)) - (sin(b) * sin(a))));
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 15.6
rmApplied cos-sum_binary640.3
rmApplied associate-*r/_binary640.3
Simplified0.3
rmApplied *-un-lft-identity_binary640.3
Applied times-frac_binary640.4
Simplified0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2020233
(FPCore (r a b)
:name "rsin B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))