x \cdot \cos y - z \cdot \sin y
x \cdot \cos y - \left(\sqrt[3]{z \cdot \sin y} \cdot \sqrt[3]{z \cdot \sin y}\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{\sin y}\right)double f(double x, double y, double z) {
double r232406 = x;
double r232407 = y;
double r232408 = cos(r232407);
double r232409 = r232406 * r232408;
double r232410 = z;
double r232411 = sin(r232407);
double r232412 = r232410 * r232411;
double r232413 = r232409 - r232412;
return r232413;
}
double f(double x, double y, double z) {
double r232414 = x;
double r232415 = y;
double r232416 = cos(r232415);
double r232417 = r232414 * r232416;
double r232418 = z;
double r232419 = sin(r232415);
double r232420 = r232418 * r232419;
double r232421 = cbrt(r232420);
double r232422 = r232421 * r232421;
double r232423 = cbrt(r232418);
double r232424 = cbrt(r232419);
double r232425 = r232423 * r232424;
double r232426 = r232422 * r232425;
double r232427 = r232417 - r232426;
return r232427;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.6
rmApplied cbrt-prod0.6
Final simplification0.6
herbie shell --seed 2020036
(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))))