\frac{r \cdot \sin b}{\cos \left(a + b\right)}\frac{r}{\mathsf{fma}\left(\cos a, \frac{\cos b}{\sin b}, -\sin a\right)}double f(double r, double a, double b) {
double r1014220 = r;
double r1014221 = b;
double r1014222 = sin(r1014221);
double r1014223 = r1014220 * r1014222;
double r1014224 = a;
double r1014225 = r1014224 + r1014221;
double r1014226 = cos(r1014225);
double r1014227 = r1014223 / r1014226;
return r1014227;
}
double f(double r, double a, double b) {
double r1014228 = r;
double r1014229 = a;
double r1014230 = cos(r1014229);
double r1014231 = b;
double r1014232 = cos(r1014231);
double r1014233 = sin(r1014231);
double r1014234 = r1014232 / r1014233;
double r1014235 = sin(r1014229);
double r1014236 = -r1014235;
double r1014237 = fma(r1014230, r1014234, r1014236);
double r1014238 = r1014228 / r1014237;
return r1014238;
}



Bits error versus r



Bits error versus a



Bits error versus b
Initial program 15.7
rmApplied cos-sum0.3
rmApplied *-un-lft-identity0.3
Applied times-frac0.3
Simplified0.3
rmApplied *-un-lft-identity0.3
Applied associate-*l*0.3
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied times-frac0.4
Applied fma-neg0.4
Final simplification0.4
herbie shell --seed 2019162 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), A"
(/ (* r (sin b)) (cos (+ a b))))