\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\begin{array}{l}
\mathbf{if}\;x \le -1.09954904008270574 \cdot 10^{-121}:\\
\;\;\;\;\left|\frac{x + 4}{y} - x \cdot \frac{z}{y}\right|\\
\mathbf{elif}\;x \le 4360323.74267882574:\\
\;\;\;\;\left|\frac{x + 4}{y} - 1 \cdot \frac{x \cdot z}{y}\right|\\
\mathbf{else}:\\
\;\;\;\;\left|\frac{x + 4}{y} - \frac{x}{y} \cdot z\right|\\
\end{array}double f(double x, double y, double z) {
double r31551 = x;
double r31552 = 4.0;
double r31553 = r31551 + r31552;
double r31554 = y;
double r31555 = r31553 / r31554;
double r31556 = r31551 / r31554;
double r31557 = z;
double r31558 = r31556 * r31557;
double r31559 = r31555 - r31558;
double r31560 = fabs(r31559);
return r31560;
}
double f(double x, double y, double z) {
double r31561 = x;
double r31562 = -1.0995490400827057e-121;
bool r31563 = r31561 <= r31562;
double r31564 = 4.0;
double r31565 = r31561 + r31564;
double r31566 = y;
double r31567 = r31565 / r31566;
double r31568 = z;
double r31569 = r31568 / r31566;
double r31570 = r31561 * r31569;
double r31571 = r31567 - r31570;
double r31572 = fabs(r31571);
double r31573 = 4360323.742678826;
bool r31574 = r31561 <= r31573;
double r31575 = 1.0;
double r31576 = r31561 * r31568;
double r31577 = r31576 / r31566;
double r31578 = r31575 * r31577;
double r31579 = r31567 - r31578;
double r31580 = fabs(r31579);
double r31581 = r31561 / r31566;
double r31582 = r31581 * r31568;
double r31583 = r31567 - r31582;
double r31584 = fabs(r31583);
double r31585 = r31574 ? r31580 : r31584;
double r31586 = r31563 ? r31572 : r31585;
return r31586;
}



Bits error versus x



Bits error versus y



Bits error versus z
Results
if x < -1.0995490400827057e-121Initial program 0.9
rmApplied div-inv0.9
Applied associate-*l*1.0
Simplified0.9
if -1.0995490400827057e-121 < x < 4360323.742678826Initial program 2.8
rmApplied add-cube-cbrt3.0
Applied *-un-lft-identity3.0
Applied times-frac3.0
Applied associate-*l*0.5
rmApplied *-un-lft-identity0.5
Applied associate-*l*0.5
Simplified0.1
if 4360323.742678826 < x Initial program 0.1
Final simplification0.3
herbie shell --seed 2020056
(FPCore (x y z)
:name "fabs fraction 1"
:precision binary64
(fabs (- (/ (+ x 4) y) (* (/ x y) z))))