x + \left(y - z\right) \cdot \frac{t - x}{a - z}\begin{array}{l}
\mathbf{if}\;a \le -7.30307411084203265 \cdot 10^{-56}:\\
\;\;\;\;\mathsf{fma}\left(\sqrt[3]{x} \cdot \sqrt[3]{x}, \sqrt[3]{x}, \left(\left(\sqrt[3]{y - z} \cdot \sqrt[3]{y - z}\right) \cdot \left(\left(\sqrt[3]{y - z} \cdot \left(\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}\right)\right) \cdot \frac{1}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right)\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\right)\\
\mathbf{elif}\;a \le -1.8601098218278759 \cdot 10^{-107}:\\
\;\;\;\;\mathsf{fma}\left(\frac{x}{z}, y, t - \frac{t \cdot y}{z}\right)\\
\mathbf{elif}\;a \le -1.1082483719169987 \cdot 10^{-137}:\\
\;\;\;\;\mathsf{fma}\left(\sqrt[3]{x} \cdot \sqrt[3]{x}, \sqrt[3]{x}, \left(\left(y - z\right) \cdot \frac{\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\right)\\
\mathbf{elif}\;a \le 1.6198574735816835 \cdot 10^{-205}:\\
\;\;\;\;\mathsf{fma}\left(\frac{x}{z}, y, t - \frac{t \cdot y}{z}\right)\\
\mathbf{else}:\\
\;\;\;\;\mathsf{fma}\left(\sqrt[3]{x} \cdot \sqrt[3]{x}, \sqrt[3]{x}, \left(\left(\sqrt[3]{y - z} \cdot \sqrt[3]{y - z}\right) \cdot \left(\left(\sqrt[3]{y - z} \cdot \left(\sqrt[3]{t - x} \cdot \sqrt[3]{t - x}\right)\right) \cdot \frac{1}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}}\right)\right) \cdot \frac{\sqrt[3]{t - x}}{\sqrt[3]{a - z}}\right)\\
\end{array}double f(double x, double y, double z, double t, double a) {
double r125695 = x;
double r125696 = y;
double r125697 = z;
double r125698 = r125696 - r125697;
double r125699 = t;
double r125700 = r125699 - r125695;
double r125701 = a;
double r125702 = r125701 - r125697;
double r125703 = r125700 / r125702;
double r125704 = r125698 * r125703;
double r125705 = r125695 + r125704;
return r125705;
}
double f(double x, double y, double z, double t, double a) {
double r125706 = a;
double r125707 = -7.303074110842033e-56;
bool r125708 = r125706 <= r125707;
double r125709 = x;
double r125710 = cbrt(r125709);
double r125711 = r125710 * r125710;
double r125712 = y;
double r125713 = z;
double r125714 = r125712 - r125713;
double r125715 = cbrt(r125714);
double r125716 = r125715 * r125715;
double r125717 = t;
double r125718 = r125717 - r125709;
double r125719 = cbrt(r125718);
double r125720 = r125719 * r125719;
double r125721 = r125715 * r125720;
double r125722 = 1.0;
double r125723 = r125706 - r125713;
double r125724 = cbrt(r125723);
double r125725 = r125724 * r125724;
double r125726 = r125722 / r125725;
double r125727 = r125721 * r125726;
double r125728 = r125716 * r125727;
double r125729 = r125719 / r125724;
double r125730 = r125728 * r125729;
double r125731 = fma(r125711, r125710, r125730);
double r125732 = -1.860109821827876e-107;
bool r125733 = r125706 <= r125732;
double r125734 = r125709 / r125713;
double r125735 = r125717 * r125712;
double r125736 = r125735 / r125713;
double r125737 = r125717 - r125736;
double r125738 = fma(r125734, r125712, r125737);
double r125739 = -1.1082483719169987e-137;
bool r125740 = r125706 <= r125739;
double r125741 = r125720 / r125725;
double r125742 = r125714 * r125741;
double r125743 = r125742 * r125729;
double r125744 = fma(r125711, r125710, r125743);
double r125745 = 1.6198574735816835e-205;
bool r125746 = r125706 <= r125745;
double r125747 = r125746 ? r125738 : r125731;
double r125748 = r125740 ? r125744 : r125747;
double r125749 = r125733 ? r125738 : r125748;
double r125750 = r125708 ? r125731 : r125749;
return r125750;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
if a < -7.303074110842033e-56 or 1.6198574735816835e-205 < a Initial program 11.4
rmApplied add-cube-cbrt11.9
Applied add-cube-cbrt12.0
Applied times-frac12.0
Applied associate-*r*9.6
rmApplied add-cube-cbrt10.1
Applied fma-def10.1
rmApplied add-cube-cbrt10.1
Applied associate-*l*10.1
rmApplied div-inv10.1
Applied associate-*r*9.8
if -7.303074110842033e-56 < a < -1.860109821827876e-107 or -1.1082483719169987e-137 < a < 1.6198574735816835e-205Initial program 24.9
Taylor expanded around inf 14.4
Simplified13.8
if -1.860109821827876e-107 < a < -1.1082483719169987e-137Initial program 22.6
rmApplied add-cube-cbrt23.4
Applied add-cube-cbrt23.5
Applied times-frac23.5
Applied associate-*r*17.0
rmApplied add-cube-cbrt17.1
Applied fma-def17.1
Final simplification10.9
herbie shell --seed 2020033 +o rules:numerics
(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)))))