r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{r}{\mathsf{fma}\left(\cos b \cdot \cos a, \frac{1}{\sin b}, -\sin a\right)}double f(double r, double a, double b) {
double r25318 = r;
double r25319 = b;
double r25320 = sin(r25319);
double r25321 = a;
double r25322 = r25321 + r25319;
double r25323 = cos(r25322);
double r25324 = r25320 / r25323;
double r25325 = r25318 * r25324;
return r25325;
}
double f(double r, double a, double b) {
double r25326 = r;
double r25327 = b;
double r25328 = cos(r25327);
double r25329 = a;
double r25330 = cos(r25329);
double r25331 = r25328 * r25330;
double r25332 = 1.0;
double r25333 = sin(r25327);
double r25334 = r25332 / r25333;
double r25335 = sin(r25329);
double r25336 = -r25335;
double r25337 = fma(r25331, r25334, r25336);
double r25338 = r25326 / r25337;
return r25338;
}



Bits error versus r



Bits error versus a



Bits error versus b
Initial program 14.7
rmApplied cos-sum0.3
rmApplied associate-*r/0.3
rmApplied associate-/l*0.4
Simplified0.4
rmApplied div-inv0.4
Applied fma-neg0.4
Final simplification0.4
herbie shell --seed 2019323 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))