\frac{r \cdot \sin b}{\cos \left(a + b\right)}\sin b \cdot \frac{r}{\mathsf{fma}\left(-\sin a, \sin b, \cos a \cdot \cos b\right)}double f(double r, double a, double b) {
double r25031 = r;
double r25032 = b;
double r25033 = sin(r25032);
double r25034 = r25031 * r25033;
double r25035 = a;
double r25036 = r25035 + r25032;
double r25037 = cos(r25036);
double r25038 = r25034 / r25037;
return r25038;
}
double f(double r, double a, double b) {
double r25039 = b;
double r25040 = sin(r25039);
double r25041 = r;
double r25042 = a;
double r25043 = sin(r25042);
double r25044 = -r25043;
double r25045 = cos(r25042);
double r25046 = cos(r25039);
double r25047 = r25045 * r25046;
double r25048 = fma(r25044, r25040, r25047);
double r25049 = r25041 / r25048;
double r25050 = r25040 * r25049;
return r25050;
}



Bits error versus r



Bits error versus a



Bits error versus b
Initial program 14.7
rmApplied cos-sum0.3
rmApplied prod-diff0.3
Simplified0.3
Simplified0.3
Taylor expanded around inf 0.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019325 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), A"
:precision binary64
(/ (* r (sin b)) (cos (+ a b))))