x + \left(y - z\right) \cdot \frac{t - x}{a - z}\begin{array}{l}
\mathbf{if}\;a \le -3.6771152743398664 \cdot 10^{-164} \lor \neg \left(a \le 2.5546992440117739 \cdot 10^{-147}\right):\\
\;\;\;\;x + \left(\left(y - z\right) \cdot \frac{\sqrt[3]{t - x}}{\frac{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}{\sqrt[3]{\sqrt[3]{t - x}} \cdot \sqrt[3]{\sqrt[3]{t - x}}}}\right) \cdot \frac{\sqrt[3]{t - x}}{\frac{\sqrt[3]{a - z}}{\sqrt[3]{\sqrt[3]{t - x}}}}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{x \cdot y}{z} + t\right) - \frac{t \cdot y}{z}\\
\end{array}double f(double x, double y, double z, double t, double a) {
double r155530 = x;
double r155531 = y;
double r155532 = z;
double r155533 = r155531 - r155532;
double r155534 = t;
double r155535 = r155534 - r155530;
double r155536 = a;
double r155537 = r155536 - r155532;
double r155538 = r155535 / r155537;
double r155539 = r155533 * r155538;
double r155540 = r155530 + r155539;
return r155540;
}
double f(double x, double y, double z, double t, double a) {
double r155541 = a;
double r155542 = -3.6771152743398664e-164;
bool r155543 = r155541 <= r155542;
double r155544 = 2.554699244011774e-147;
bool r155545 = r155541 <= r155544;
double r155546 = !r155545;
bool r155547 = r155543 || r155546;
double r155548 = x;
double r155549 = y;
double r155550 = z;
double r155551 = r155549 - r155550;
double r155552 = t;
double r155553 = r155552 - r155548;
double r155554 = cbrt(r155553);
double r155555 = r155541 - r155550;
double r155556 = cbrt(r155555);
double r155557 = r155556 * r155556;
double r155558 = cbrt(r155554);
double r155559 = r155558 * r155558;
double r155560 = r155557 / r155559;
double r155561 = r155554 / r155560;
double r155562 = r155551 * r155561;
double r155563 = r155556 / r155558;
double r155564 = r155554 / r155563;
double r155565 = r155562 * r155564;
double r155566 = r155548 + r155565;
double r155567 = r155548 * r155549;
double r155568 = r155567 / r155550;
double r155569 = r155568 + r155552;
double r155570 = r155552 * r155549;
double r155571 = r155570 / r155550;
double r155572 = r155569 - r155571;
double r155573 = r155547 ? r155566 : r155572;
return r155573;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
Results
if a < -3.6771152743398664e-164 or 2.554699244011774e-147 < a Initial program 11.8
rmApplied add-cube-cbrt12.3
Applied associate-/l*12.3
rmApplied add-cube-cbrt12.5
Applied add-cube-cbrt12.6
Applied times-frac12.6
Applied times-frac12.6
Applied associate-*r*9.8
if -3.6771152743398664e-164 < a < 2.554699244011774e-147Initial program 24.5
Taylor expanded around inf 13.0
Final simplification10.5
herbie shell --seed 2020042
(FPCore (x y z t a)
:name "Numeric.Signal:interpolate from hsignal-0.2.7.1"
:precision binary64
(+ x (* (- y z) (/ (- t x) (- a z)))))