\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\frac{x + 4}{y} - \left(x \cdot \frac{\sqrt[3]{z} \cdot \sqrt[3]{z}}{\sqrt[3]{y} \cdot \sqrt[3]{y}}\right) \cdot \frac{\sqrt[3]{z}}{\sqrt[3]{y}}\right|double f(double x, double y, double z) {
double r27425 = x;
double r27426 = 4.0;
double r27427 = r27425 + r27426;
double r27428 = y;
double r27429 = r27427 / r27428;
double r27430 = r27425 / r27428;
double r27431 = z;
double r27432 = r27430 * r27431;
double r27433 = r27429 - r27432;
double r27434 = fabs(r27433);
return r27434;
}
double f(double x, double y, double z) {
double r27435 = x;
double r27436 = 4.0;
double r27437 = r27435 + r27436;
double r27438 = y;
double r27439 = r27437 / r27438;
double r27440 = z;
double r27441 = cbrt(r27440);
double r27442 = r27441 * r27441;
double r27443 = cbrt(r27438);
double r27444 = r27443 * r27443;
double r27445 = r27442 / r27444;
double r27446 = r27435 * r27445;
double r27447 = r27441 / r27443;
double r27448 = r27446 * r27447;
double r27449 = r27439 - r27448;
double r27450 = fabs(r27449);
return r27450;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 1.5
rmApplied div-inv1.5
Applied associate-*l*3.4
Simplified3.4
rmApplied add-cube-cbrt3.7
Applied add-cube-cbrt3.7
Applied times-frac3.7
Applied associate-*r*0.9
Final simplification0.9
herbie shell --seed 2019326 +o rules:numerics
(FPCore (x y z)
:name "fabs fraction 1"
:precision binary64
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))