x \cdot \sin y + z \cdot \cos y
x \cdot \sin y + \left(z \cdot \sqrt[3]{e^{\log \left({\left(\cos y\right)}^{2}\right)}}\right) \cdot \sqrt[3]{\cos y}double f(double x, double y, double z) {
double r163625 = x;
double r163626 = y;
double r163627 = sin(r163626);
double r163628 = r163625 * r163627;
double r163629 = z;
double r163630 = cos(r163626);
double r163631 = r163629 * r163630;
double r163632 = r163628 + r163631;
return r163632;
}
double f(double x, double y, double z) {
double r163633 = x;
double r163634 = y;
double r163635 = sin(r163634);
double r163636 = r163633 * r163635;
double r163637 = z;
double r163638 = cos(r163634);
double r163639 = 2.0;
double r163640 = pow(r163638, r163639);
double r163641 = log(r163640);
double r163642 = exp(r163641);
double r163643 = cbrt(r163642);
double r163644 = r163637 * r163643;
double r163645 = cbrt(r163638);
double r163646 = r163644 * r163645;
double r163647 = r163636 + r163646;
return r163647;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.4
Applied associate-*r*0.4
rmApplied cbrt-unprod0.3
Simplified0.3
rmApplied add-exp-log16.3
Applied pow-exp16.3
Simplified0.3
Final simplification0.3
herbie shell --seed 2019294
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, B"
:precision binary64
(+ (* x (sin y)) (* z (cos y))))