\frac{r \cdot \sin b}{\cos \left(a + b\right)}\frac{r}{\cos a \cdot \frac{\cos b}{\sin b} - \sin a}double f(double r, double a, double b) {
double r24850 = r;
double r24851 = b;
double r24852 = sin(r24851);
double r24853 = r24850 * r24852;
double r24854 = a;
double r24855 = r24854 + r24851;
double r24856 = cos(r24855);
double r24857 = r24853 / r24856;
return r24857;
}
double f(double r, double a, double b) {
double r24858 = r;
double r24859 = a;
double r24860 = cos(r24859);
double r24861 = b;
double r24862 = cos(r24861);
double r24863 = sin(r24861);
double r24864 = r24862 / r24863;
double r24865 = r24860 * r24864;
double r24866 = sin(r24859);
double r24867 = r24865 - r24866;
double r24868 = r24858 / r24867;
return r24868;
}



Bits error versus r



Bits error versus a



Bits error versus b
Results
Initial program 14.7
rmApplied cos-sum0.3
rmApplied *-un-lft-identity0.3
Applied times-frac0.3
Simplified0.3
rmApplied *-un-lft-identity0.3
Applied associate-*l*0.3
Simplified0.4
rmApplied *-un-lft-identity0.4
Applied times-frac0.4
Simplified0.4
Final simplification0.4
herbie shell --seed 2019304
(FPCore (r a b)
:name "r*sin(b)/cos(a+b), A"
:precision binary64
(/ (* r (sin b)) (cos (+ a b))))