\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\frac{4 + x}{y} - \frac{\sqrt[3]{x} \cdot \sqrt[3]{x}}{\sqrt[3]{y} \cdot \sqrt[3]{y}} \cdot \left(z \cdot \frac{\sqrt[3]{x}}{\sqrt[3]{y}}\right)\right|double f(double x, double y, double z) {
double r53197 = x;
double r53198 = 4.0;
double r53199 = r53197 + r53198;
double r53200 = y;
double r53201 = r53199 / r53200;
double r53202 = r53197 / r53200;
double r53203 = z;
double r53204 = r53202 * r53203;
double r53205 = r53201 - r53204;
double r53206 = fabs(r53205);
return r53206;
}
double f(double x, double y, double z) {
double r53207 = 4.0;
double r53208 = x;
double r53209 = r53207 + r53208;
double r53210 = y;
double r53211 = r53209 / r53210;
double r53212 = cbrt(r53208);
double r53213 = r53212 * r53212;
double r53214 = cbrt(r53210);
double r53215 = r53214 * r53214;
double r53216 = r53213 / r53215;
double r53217 = z;
double r53218 = r53212 / r53214;
double r53219 = r53217 * r53218;
double r53220 = r53216 * r53219;
double r53221 = r53211 - r53220;
double r53222 = fabs(r53221);
return r53222;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 1.6
rmApplied add-cube-cbrt1.9
Applied add-cube-cbrt1.9
Applied times-frac2.0
Applied associate-*l*0.6
Simplified1.2
rmApplied *-un-lft-identity1.2
Applied cbrt-prod1.2
Applied times-frac0.6
Simplified0.6
Final simplification0.6
herbie shell --seed 2019195
(FPCore (x y z)
:name "fabs fraction 1"
(fabs (- (/ (+ x 4.0) y) (* (/ x y) z))))