\frac{r \cdot \sin b}{\cos \left(a + b\right)}\frac{1}{\frac{\cos a \cdot \cos b}{\sin b} - \sin a} \cdot rdouble f(double r, double a, double b) {
double r909765 = r;
double r909766 = b;
double r909767 = sin(r909766);
double r909768 = r909765 * r909767;
double r909769 = a;
double r909770 = r909769 + r909766;
double r909771 = cos(r909770);
double r909772 = r909768 / r909771;
return r909772;
}
double f(double r, double a, double b) {
double r909773 = 1.0;
double r909774 = a;
double r909775 = cos(r909774);
double r909776 = b;
double r909777 = cos(r909776);
double r909778 = r909775 * r909777;
double r909779 = sin(r909776);
double r909780 = r909778 / r909779;
double r909781 = sin(r909774);
double r909782 = r909780 - r909781;
double r909783 = r909773 / r909782;
double r909784 = r;
double r909785 = r909783 * r909784;
return r909785;
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 15.1
rmApplied cos-sum0.3
rmApplied fma-neg0.3
rmApplied *-un-lft-identity0.3
Applied times-frac0.3
Simplified0.3
Simplified0.3
rmApplied clear-num0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019139 +o rules:numerics
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), A"
(/ (* r (sin b)) (cos (+ a b))))