\left(x + \sin y\right) + z \cdot \cos y
\left(x + \sin y\right) + \left(z \cdot {\left({\left({\left(\cos y\right)}^{2}\right)}^{\frac{2}{3}} \cdot {\left(\sqrt[3]{{\left({\left(\cos y\right)}^{2}\right)}^{3}}\right)}^{\frac{1}{3}}\right)}^{\frac{1}{3}}\right) \cdot \sqrt[3]{\cos y}double f(double x, double y, double z) {
double r192300 = x;
double r192301 = y;
double r192302 = sin(r192301);
double r192303 = r192300 + r192302;
double r192304 = z;
double r192305 = cos(r192301);
double r192306 = r192304 * r192305;
double r192307 = r192303 + r192306;
return r192307;
}
double f(double x, double y, double z) {
double r192308 = x;
double r192309 = y;
double r192310 = sin(r192309);
double r192311 = r192308 + r192310;
double r192312 = z;
double r192313 = cos(r192309);
double r192314 = 2.0;
double r192315 = pow(r192313, r192314);
double r192316 = 0.6666666666666666;
double r192317 = pow(r192315, r192316);
double r192318 = 3.0;
double r192319 = pow(r192315, r192318);
double r192320 = cbrt(r192319);
double r192321 = 0.3333333333333333;
double r192322 = pow(r192320, r192321);
double r192323 = r192317 * r192322;
double r192324 = pow(r192323, r192321);
double r192325 = r192312 * r192324;
double r192326 = cbrt(r192313);
double r192327 = r192325 * r192326;
double r192328 = r192311 + r192327;
return r192328;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.3
Applied associate-*r*0.3
rmApplied pow1/316.4
Applied pow1/316.4
Applied pow-prod-down0.1
Simplified0.1
rmApplied add-cube-cbrt0.2
Simplified0.1
Simplified0.1
rmApplied add-cbrt-cube0.1
Simplified0.1
Final simplification0.1
herbie shell --seed 2020021
(FPCore (x y z)
:name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, C"
:precision binary64
(+ (+ x (sin y)) (* z (cos y))))