\frac{r \cdot \sin b}{\cos \left(a + b\right)}\frac{r \cdot \sin b}{\mathsf{fma}\left(\cos a, \cos b, -\mathsf{log1p}\left(\mathsf{expm1}\left(\sin a \cdot \sin b\right)\right)\right)}double f(double r, double a, double b) {
double r698824 = r;
double r698825 = b;
double r698826 = sin(r698825);
double r698827 = r698824 * r698826;
double r698828 = a;
double r698829 = r698828 + r698825;
double r698830 = cos(r698829);
double r698831 = r698827 / r698830;
return r698831;
}
double f(double r, double a, double b) {
double r698832 = r;
double r698833 = b;
double r698834 = sin(r698833);
double r698835 = r698832 * r698834;
double r698836 = a;
double r698837 = cos(r698836);
double r698838 = cos(r698833);
double r698839 = sin(r698836);
double r698840 = r698839 * r698834;
double r698841 = expm1(r698840);
double r698842 = log1p(r698841);
double r698843 = -r698842;
double r698844 = fma(r698837, r698838, r698843);
double r698845 = r698835 / r698844;
return r698845;
}



Bits error versus r



Bits error versus a



Bits error versus b
Initial program 15.1
rmApplied cos-sum0.3
rmApplied fma-neg0.3
rmApplied log1p-expm1-u0.3
Final simplification0.3
herbie shell --seed 2019151 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), A"
(/ (* r (sin b)) (cos (+ a b))))