r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{r}{\frac{\cos a \cdot \cos b - \sin a \cdot \sin b}{\sin b}}double f(double r, double a, double b) {
double r18198 = r;
double r18199 = b;
double r18200 = sin(r18199);
double r18201 = a;
double r18202 = r18201 + r18199;
double r18203 = cos(r18202);
double r18204 = r18200 / r18203;
double r18205 = r18198 * r18204;
return r18205;
}
double f(double r, double a, double b) {
double r18206 = r;
double r18207 = a;
double r18208 = cos(r18207);
double r18209 = b;
double r18210 = cos(r18209);
double r18211 = r18208 * r18210;
double r18212 = sin(r18207);
double r18213 = sin(r18209);
double r18214 = r18212 * r18213;
double r18215 = r18211 - r18214;
double r18216 = r18215 / r18213;
double r18217 = r18206 / r18216;
return r18217;
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 15.3
rmApplied cos-sum0.3
rmApplied associate-*r/0.3
rmApplied associate-/l*0.4
Final simplification0.4
herbie shell --seed 2020024 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))