\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\frac{4 + x}{y} - \left(\sqrt{\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}} \cdot \left(\frac{\sqrt[3]{x}}{\sqrt[3]{y}} \cdot z\right)\right) \cdot \sqrt{\frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}}\right|double f(double x, double y, double z) {
double r1284942 = x;
double r1284943 = 4.0;
double r1284944 = r1284942 + r1284943;
double r1284945 = y;
double r1284946 = r1284944 / r1284945;
double r1284947 = r1284942 / r1284945;
double r1284948 = z;
double r1284949 = r1284947 * r1284948;
double r1284950 = r1284946 - r1284949;
double r1284951 = fabs(r1284950);
return r1284951;
}
double f(double x, double y, double z) {
double r1284952 = 4.0;
double r1284953 = x;
double r1284954 = r1284952 + r1284953;
double r1284955 = y;
double r1284956 = r1284954 / r1284955;
double r1284957 = cbrt(r1284953);
double r1284958 = r1284957 * r1284957;
double r1284959 = cbrt(r1284955);
double r1284960 = r1284959 * r1284959;
double r1284961 = r1284958 / r1284960;
double r1284962 = sqrt(r1284961);
double r1284963 = r1284957 / r1284959;
double r1284964 = z;
double r1284965 = r1284963 * r1284964;
double r1284966 = r1284962 * r1284965;
double r1284967 = r1284966 * r1284962;
double r1284968 = r1284956 - r1284967;
double r1284969 = fabs(r1284968);
return r1284969;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 1.5
rmApplied add-cube-cbrt1.8
Applied add-cube-cbrt1.9
Applied times-frac1.9
Applied associate-*l*0.6
rmApplied add-sqr-sqrt0.6
Applied associate-*l*0.6
Final simplification0.6
herbie shell --seed 2019151 +o rules:numerics
(FPCore (x y z)
:name "fabs fraction 1"
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))