r \cdot \frac{\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 r24138 = r;
double r24139 = b;
double r24140 = sin(r24139);
double r24141 = a;
double r24142 = r24141 + r24139;
double r24143 = cos(r24142);
double r24144 = r24140 / r24143;
double r24145 = r24138 * r24144;
return r24145;
}
double f(double r, double a, double b) {
double r24146 = r;
double r24147 = a;
double r24148 = cos(r24147);
double r24149 = b;
double r24150 = cos(r24149);
double r24151 = sin(r24149);
double r24152 = r24150 / r24151;
double r24153 = sin(r24147);
double r24154 = -r24153;
double r24155 = fma(r24148, r24152, r24154);
double r24156 = r24146 / r24155;
return r24156;
}



Bits error versus r



Bits error versus a



Bits error versus b
Initial program 15.5
rmApplied cos-sum0.3
rmApplied pow10.3
Applied pow10.3
Applied pow-prod-down0.3
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied times-frac0.4
Applied fma-neg0.4
Final simplification0.4
herbie shell --seed 2019322 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))