r \cdot \frac{\sin b}{\cos \left(a + b\right)}\frac{r \cdot \sin b}{\cos b \cdot \cos a - \log \left(e^{\sin a \cdot \sin b}\right)}double f(double r, double a, double b) {
double r16885 = r;
double r16886 = b;
double r16887 = sin(r16886);
double r16888 = a;
double r16889 = r16888 + r16886;
double r16890 = cos(r16889);
double r16891 = r16887 / r16890;
double r16892 = r16885 * r16891;
return r16892;
}
double f(double r, double a, double b) {
double r16893 = r;
double r16894 = b;
double r16895 = sin(r16894);
double r16896 = r16893 * r16895;
double r16897 = cos(r16894);
double r16898 = a;
double r16899 = cos(r16898);
double r16900 = r16897 * r16899;
double r16901 = sin(r16898);
double r16902 = r16901 * r16895;
double r16903 = exp(r16902);
double r16904 = log(r16903);
double r16905 = r16900 - r16904;
double r16906 = r16896 / r16905;
return r16906;
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 15.1
rmApplied cos-sum0.3
rmApplied add-log-exp0.4
Taylor expanded around inf 0.3
rmApplied add-log-exp0.4
Final simplification0.4
herbie shell --seed 2020060
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), B"
:precision binary64
(* r (/ (sin b) (cos (+ a b)))))