\left(x + \cos y\right) - z \cdot \sin y
\left(x + \cos y\right) - \sqrt[3]{\sin y \cdot z} \cdot \left(\left(\sqrt[3]{\sin y} \cdot \sqrt[3]{\sin y}\right) \cdot \left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right)\right)double f(double x, double y, double z) {
double r8290021 = x;
double r8290022 = y;
double r8290023 = cos(r8290022);
double r8290024 = r8290021 + r8290023;
double r8290025 = z;
double r8290026 = sin(r8290022);
double r8290027 = r8290025 * r8290026;
double r8290028 = r8290024 - r8290027;
return r8290028;
}
double f(double x, double y, double z) {
double r8290029 = x;
double r8290030 = y;
double r8290031 = cos(r8290030);
double r8290032 = r8290029 + r8290031;
double r8290033 = sin(r8290030);
double r8290034 = z;
double r8290035 = r8290033 * r8290034;
double r8290036 = cbrt(r8290035);
double r8290037 = cbrt(r8290033);
double r8290038 = r8290037 * r8290037;
double r8290039 = cbrt(r8290034);
double r8290040 = r8290039 * r8290039;
double r8290041 = r8290038 * r8290040;
double r8290042 = r8290036 * r8290041;
double r8290043 = r8290032 - r8290042;
return r8290043;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 0.1
rmApplied add-cube-cbrt0.4
rmApplied cbrt-prod0.3
Applied cbrt-prod0.4
Applied swap-sqr0.4
Final simplification0.4
herbie shell --seed 2019162 +o rules:numerics
(FPCore (x y z)
:name "Graphics.Rasterific.Svg.PathConverter:segmentToBezier from rasterific-svg-0.2.3.1, B"
(- (+ x (cos y)) (* z (sin y))))