\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\begin{array}{l}
\mathbf{if}\;y \le -1.69974851560525037 \cdot 10^{72}:\\
\;\;\;\;0\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\left(\sqrt[3]{\left(y + a\right) \cdot y + b} \cdot \sqrt[3]{\left(y + a\right) \cdot y + b}\right) \cdot \left(\sqrt[3]{\left(y + a\right) \cdot y + b} \cdot y\right) + c\right) \cdot y + i}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r65423 = x;
double r65424 = y;
double r65425 = r65423 * r65424;
double r65426 = z;
double r65427 = r65425 + r65426;
double r65428 = r65427 * r65424;
double r65429 = 27464.7644705;
double r65430 = r65428 + r65429;
double r65431 = r65430 * r65424;
double r65432 = 230661.510616;
double r65433 = r65431 + r65432;
double r65434 = r65433 * r65424;
double r65435 = t;
double r65436 = r65434 + r65435;
double r65437 = a;
double r65438 = r65424 + r65437;
double r65439 = r65438 * r65424;
double r65440 = b;
double r65441 = r65439 + r65440;
double r65442 = r65441 * r65424;
double r65443 = c;
double r65444 = r65442 + r65443;
double r65445 = r65444 * r65424;
double r65446 = i;
double r65447 = r65445 + r65446;
double r65448 = r65436 / r65447;
return r65448;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r65449 = y;
double r65450 = -1.6997485156052504e+72;
bool r65451 = r65449 <= r65450;
double r65452 = 0.0;
double r65453 = x;
double r65454 = r65453 * r65449;
double r65455 = z;
double r65456 = r65454 + r65455;
double r65457 = r65456 * r65449;
double r65458 = 27464.7644705;
double r65459 = r65457 + r65458;
double r65460 = r65459 * r65449;
double r65461 = 230661.510616;
double r65462 = r65460 + r65461;
double r65463 = r65462 * r65449;
double r65464 = t;
double r65465 = r65463 + r65464;
double r65466 = a;
double r65467 = r65449 + r65466;
double r65468 = r65467 * r65449;
double r65469 = b;
double r65470 = r65468 + r65469;
double r65471 = cbrt(r65470);
double r65472 = r65471 * r65471;
double r65473 = r65471 * r65449;
double r65474 = r65472 * r65473;
double r65475 = c;
double r65476 = r65474 + r65475;
double r65477 = r65476 * r65449;
double r65478 = i;
double r65479 = r65477 + r65478;
double r65480 = r65465 / r65479;
double r65481 = r65451 ? r65452 : r65480;
return r65481;
}



Bits error versus x



Bits error versus y



Bits error versus z



Bits error versus t



Bits error versus a



Bits error versus b



Bits error versus c



Bits error versus i
Results
if y < -1.6997485156052504e+72Initial program 63.4
Taylor expanded around 0 61.4
if -1.6997485156052504e+72 < y Initial program 20.4
rmApplied add-cube-cbrt20.6
Applied associate-*l*20.6
Final simplification28.7
herbie shell --seed 2020049 +o rules:numerics
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
:precision binary64
(/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))