x + \left(y - z\right) \cdot \frac{t - x}{a - z}\begin{array}{l}
\mathbf{if}\;a \le -1.997543300824516967451174039616744917242 \cdot 10^{-131} \lor \neg \left(a \le 3.148145590460313919036522755186967820726 \cdot 10^{-195}\right):\\
\;\;\;\;\frac{\sqrt[3]{y - z} \cdot \sqrt[3]{y - z}}{\sqrt[3]{a - z}} \cdot \left(1 \cdot \left(\frac{t - x}{\sqrt[3]{a - z}} \cdot \frac{\sqrt[3]{y - z}}{\sqrt[3]{a - z}}\right)\right) + 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 r155593 = x;
double r155594 = y;
double r155595 = z;
double r155596 = r155594 - r155595;
double r155597 = t;
double r155598 = r155597 - r155593;
double r155599 = a;
double r155600 = r155599 - r155595;
double r155601 = r155598 / r155600;
double r155602 = r155596 * r155601;
double r155603 = r155593 + r155602;
return r155603;
}
double f(double x, double y, double z, double t, double a) {
double r155604 = a;
double r155605 = -1.997543300824517e-131;
bool r155606 = r155604 <= r155605;
double r155607 = 3.148145590460314e-195;
bool r155608 = r155604 <= r155607;
double r155609 = !r155608;
bool r155610 = r155606 || r155609;
double r155611 = y;
double r155612 = z;
double r155613 = r155611 - r155612;
double r155614 = cbrt(r155613);
double r155615 = r155614 * r155614;
double r155616 = r155604 - r155612;
double r155617 = cbrt(r155616);
double r155618 = r155615 / r155617;
double r155619 = 1.0;
double r155620 = t;
double r155621 = x;
double r155622 = r155620 - r155621;
double r155623 = r155622 / r155617;
double r155624 = r155614 / r155617;
double r155625 = r155623 * r155624;
double r155626 = r155619 * r155625;
double r155627 = r155618 * r155626;
double r155628 = r155627 + r155621;
double r155629 = r155621 * r155611;
double r155630 = r155629 / r155612;
double r155631 = r155630 + r155620;
double r155632 = r155620 * r155611;
double r155633 = r155632 / r155612;
double r155634 = r155631 - r155633;
double r155635 = r155610 ? r155628 : r155634;
return r155635;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
Results
if a < -1.997543300824517e-131 or 3.148145590460314e-195 < a Initial program 11.8
rmApplied add-cube-cbrt12.3
Applied *-un-lft-identity12.3
Applied times-frac12.3
Applied associate-*r*10.1
Simplified10.1
rmApplied add-cube-cbrt10.1
Applied times-frac10.1
Applied associate-*l*9.8
rmApplied *-un-lft-identity9.8
Applied cbrt-prod9.8
Applied *-un-lft-identity9.8
Applied times-frac9.8
Applied associate-*l*9.8
Simplified9.8
if -1.997543300824517e-131 < a < 3.148145590460314e-195Initial program 25.5
Taylor expanded around inf 13.3
Final simplification10.5
herbie shell --seed 2019323
(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)))))