\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\frac{\left(x + 4\right) - x \cdot z}{y}\right|double f(double x, double y, double z) {
double r23144 = x;
double r23145 = 4.0;
double r23146 = r23144 + r23145;
double r23147 = y;
double r23148 = r23146 / r23147;
double r23149 = r23144 / r23147;
double r23150 = z;
double r23151 = r23149 * r23150;
double r23152 = r23148 - r23151;
double r23153 = fabs(r23152);
return r23153;
}
double f(double x, double y, double z) {
double r23154 = x;
double r23155 = 4.0;
double r23156 = r23154 + r23155;
double r23157 = z;
double r23158 = r23154 * r23157;
double r23159 = r23156 - r23158;
double r23160 = y;
double r23161 = r23159 / r23160;
double r23162 = fabs(r23161);
return r23162;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
if x < -2005867205.6988971 or 1.851374073176425e-34 < x Initial program 0.2
rmApplied div-inv0.2
Applied associate-*l*0.2
Simplified0.2
if -2005867205.6988971 < x < 1.851374073176425e-34Initial program 2.7
rmApplied associate-*l/0.1
Applied sub-div0.1
Final simplification3.5
herbie shell --seed 2019297
(FPCore (x y z)
:name "fabs fraction 1"
:precision binary64
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))