r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{\sin b}{\cos a \cdot \cos b - \sin a \cdot \sin b} \cdot rdouble f(double r, double a, double b) {
double r19999 = r;
double r20000 = b;
double r20001 = sin(r20000);
double r20002 = a;
double r20003 = r20002 + r20000;
double r20004 = cos(r20003);
double r20005 = r20001 / r20004;
double r20006 = r19999 * r20005;
return r20006;
}
double f(double r, double a, double b) {
double r20007 = b;
double r20008 = sin(r20007);
double r20009 = a;
double r20010 = cos(r20009);
double r20011 = cos(r20007);
double r20012 = r20010 * r20011;
double r20013 = sin(r20009);
double r20014 = r20013 * r20008;
double r20015 = r20012 - r20014;
double r20016 = r20008 / r20015;
double r20017 = r;
double r20018 = r20016 * r20017;
return r20018;
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 15.3
rmApplied cos-sum0.3
rmApplied *-commutative0.3
Final simplification0.3
herbie shell --seed 2020018
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))