x + \left(y - z\right) \cdot \frac{t - x}{a - z}\begin{array}{l}
\mathbf{if}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le -5.94158773471745396 \cdot 10^{-307}:\\
\;\;\;\;x + \left(y - z\right) \cdot \frac{t - x}{a - z}\\
\mathbf{elif}\;x + \left(y - z\right) \cdot \frac{t - x}{a - z} \le 0.0:\\
\;\;\;\;t + y \cdot \left(\frac{x}{z} - \frac{t}{z}\right)\\
\mathbf{else}:\\
\;\;\;\;x + \frac{y - z}{\sqrt[3]{a - z} \cdot \sqrt[3]{a - z}} \cdot \frac{t - x}{\sqrt[3]{a - z}}\\
\end{array}double f(double x, double y, double z, double t, double a) {
double r160169 = x;
double r160170 = y;
double r160171 = z;
double r160172 = r160170 - r160171;
double r160173 = t;
double r160174 = r160173 - r160169;
double r160175 = a;
double r160176 = r160175 - r160171;
double r160177 = r160174 / r160176;
double r160178 = r160172 * r160177;
double r160179 = r160169 + r160178;
return r160179;
}
double f(double x, double y, double z, double t, double a) {
double r160180 = x;
double r160181 = y;
double r160182 = z;
double r160183 = r160181 - r160182;
double r160184 = t;
double r160185 = r160184 - r160180;
double r160186 = a;
double r160187 = r160186 - r160182;
double r160188 = r160185 / r160187;
double r160189 = r160183 * r160188;
double r160190 = r160180 + r160189;
double r160191 = -5.941587734717454e-307;
bool r160192 = r160190 <= r160191;
double r160193 = 0.0;
bool r160194 = r160190 <= r160193;
double r160195 = r160180 / r160182;
double r160196 = r160184 / r160182;
double r160197 = r160195 - r160196;
double r160198 = r160181 * r160197;
double r160199 = r160184 + r160198;
double r160200 = cbrt(r160187);
double r160201 = r160200 * r160200;
double r160202 = r160183 / r160201;
double r160203 = r160185 / r160200;
double r160204 = r160202 * r160203;
double r160205 = r160180 + r160204;
double r160206 = r160194 ? r160199 : r160205;
double r160207 = r160192 ? r160190 : r160206;
return r160207;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a
Results
if (+ x (* (- y z) (/ (- t x) (- a z)))) < -5.941587734717454e-307Initial program 6.9
if -5.941587734717454e-307 < (+ x (* (- y z) (/ (- t x) (- a z)))) < 0.0Initial program 61.8
rmApplied add-cube-cbrt61.4
Taylor expanded around inf 24.7
Simplified18.9
if 0.0 < (+ x (* (- y z) (/ (- t x) (- a z)))) Initial program 7.7
rmApplied add-cube-cbrt8.4
Applied *-un-lft-identity8.4
Applied times-frac8.4
Applied associate-*r*5.0
Simplified5.0
Final simplification7.6
herbie shell --seed 2020047
(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)))))