\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\left(-\frac{x}{y}\right) \cdot z + \frac{4 + x}{y}\right|double f(double x, double y, double z) {
double r830770 = x;
double r830771 = 4.0;
double r830772 = r830770 + r830771;
double r830773 = y;
double r830774 = r830772 / r830773;
double r830775 = r830770 / r830773;
double r830776 = z;
double r830777 = r830775 * r830776;
double r830778 = r830774 - r830777;
double r830779 = fabs(r830778);
return r830779;
}
double f(double x, double y, double z) {
double r830780 = x;
double r830781 = y;
double r830782 = r830780 / r830781;
double r830783 = -r830782;
double r830784 = z;
double r830785 = r830783 * r830784;
double r830786 = 4.0;
double r830787 = r830786 + r830780;
double r830788 = r830787 / r830781;
double r830789 = r830785 + r830788;
double r830790 = fabs(r830789);
return r830790;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
Initial program 1.6
rmApplied sub-neg1.6
Final simplification1.6
herbie shell --seed 2019156
(FPCore (x y z)
:name "fabs fraction 1"
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))