r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{1}{\cos b \cdot \cos a - \sin b \cdot \sin a} \cdot \left(r \cdot \sin b\right)double f(double r, double a, double b) {
double r750227 = r;
double r750228 = b;
double r750229 = sin(r750228);
double r750230 = a;
double r750231 = r750230 + r750228;
double r750232 = cos(r750231);
double r750233 = r750229 / r750232;
double r750234 = r750227 * r750233;
return r750234;
}
double f(double r, double a, double b) {
double r750235 = 1.0;
double r750236 = b;
double r750237 = cos(r750236);
double r750238 = a;
double r750239 = cos(r750238);
double r750240 = r750237 * r750239;
double r750241 = sin(r750236);
double r750242 = sin(r750238);
double r750243 = r750241 * r750242;
double r750244 = r750240 - r750243;
double r750245 = r750235 / r750244;
double r750246 = r;
double r750247 = r750246 * r750241;
double r750248 = r750245 * r750247;
return r750248;
}



Bits error versus r



Bits error versus a



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