\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\left|\frac{x + 4}{y} - x \cdot \frac{z}{y}\right|double f(double x, double y, double z) {
double r40728 = x;
double r40729 = 4.0;
double r40730 = r40728 + r40729;
double r40731 = y;
double r40732 = r40730 / r40731;
double r40733 = r40728 / r40731;
double r40734 = z;
double r40735 = r40733 * r40734;
double r40736 = r40732 - r40735;
double r40737 = fabs(r40736);
return r40737;
}
double f(double x, double y, double z) {
double r40738 = x;
double r40739 = 4.0;
double r40740 = r40738 + r40739;
double r40741 = y;
double r40742 = r40740 / r40741;
double r40743 = z;
double r40744 = r40743 / r40741;
double r40745 = r40738 * r40744;
double r40746 = r40742 - r40745;
double r40747 = fabs(r40746);
return r40747;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
if y < -1.3888570802766273e-10 or 2.5573295651290014e-94 < y Initial program 2.4
rmApplied div-inv2.4
Applied associate-*l*0.4
Simplified0.4
if -1.3888570802766273e-10 < y < 2.5573295651290014e-94Initial program 0.1
Taylor expanded around 0 0.1
Final simplification3.4
herbie shell --seed 2019291
(FPCore (x y z)
:name "fabs fraction 1"
:precision binary64
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))