x \cdot \cos y - z \cdot \sin y
\left(x \cdot {\left(\sqrt{\sqrt[3]{{\left(\cos y\right)}^{6}}} \cdot \sqrt{\sqrt[3]{{\left(\cos y\right)}^{6}}}\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\cos y} - z \cdot \sin ydouble f(double x, double y, double z) {
double r174537 = x;
double r174538 = y;
double r174539 = cos(r174538);
double r174540 = r174537 * r174539;
double r174541 = z;
double r174542 = sin(r174538);
double r174543 = r174541 * r174542;
double r174544 = r174540 - r174543;
return r174544;
}
double f(double x, double y, double z) {
double r174545 = x;
double r174546 = y;
double r174547 = cos(r174546);
double r174548 = 6.0;
double r174549 = pow(r174547, r174548);
double r174550 = cbrt(r174549);
double r174551 = sqrt(r174550);
double r174552 = r174551 * r174551;
double r174553 = 0.3333333333333333;
double r174554 = pow(r174552, r174553);
double r174555 = r174545 * r174554;
double r174556 = cbrt(r174547);
double r174557 = r174555 * r174556;
double r174558 = z;
double r174559 = sin(r174546);
double r174560 = r174558 * r174559;
double r174561 = r174557 - r174560;
return r174561;
}



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 pow1/316.3
Applied pow1/316.2
Applied pow-prod-down0.2
Simplified0.2
rmApplied add-cbrt-cube0.2
Simplified0.2
rmApplied add-sqr-sqrt0.2
Final simplification0.2
herbie shell --seed 2019323
(FPCore (x y z)
:name "Diagrams.ThreeD.Transform:aboutX from diagrams-lib-1.3.0.3, A"
:precision binary64
(- (* x (cos y)) (* z (sin y))))