\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}\;\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} \le 2.9235959509009306 \cdot 10^{289}:\\
\;\;\;\;\frac{\left(\left(\left(\sqrt[3]{\left(x \cdot y + z\right) \cdot y} \cdot \sqrt[3]{\left(x \cdot y + z\right) \cdot y}\right) \cdot \sqrt[3]{\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}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r59806 = x;
double r59807 = y;
double r59808 = r59806 * r59807;
double r59809 = z;
double r59810 = r59808 + r59809;
double r59811 = r59810 * r59807;
double r59812 = 27464.7644705;
double r59813 = r59811 + r59812;
double r59814 = r59813 * r59807;
double r59815 = 230661.510616;
double r59816 = r59814 + r59815;
double r59817 = r59816 * r59807;
double r59818 = t;
double r59819 = r59817 + r59818;
double r59820 = a;
double r59821 = r59807 + r59820;
double r59822 = r59821 * r59807;
double r59823 = b;
double r59824 = r59822 + r59823;
double r59825 = r59824 * r59807;
double r59826 = c;
double r59827 = r59825 + r59826;
double r59828 = r59827 * r59807;
double r59829 = i;
double r59830 = r59828 + r59829;
double r59831 = r59819 / r59830;
return r59831;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r59832 = x;
double r59833 = y;
double r59834 = r59832 * r59833;
double r59835 = z;
double r59836 = r59834 + r59835;
double r59837 = r59836 * r59833;
double r59838 = 27464.7644705;
double r59839 = r59837 + r59838;
double r59840 = r59839 * r59833;
double r59841 = 230661.510616;
double r59842 = r59840 + r59841;
double r59843 = r59842 * r59833;
double r59844 = t;
double r59845 = r59843 + r59844;
double r59846 = a;
double r59847 = r59833 + r59846;
double r59848 = r59847 * r59833;
double r59849 = b;
double r59850 = r59848 + r59849;
double r59851 = r59850 * r59833;
double r59852 = c;
double r59853 = r59851 + r59852;
double r59854 = r59853 * r59833;
double r59855 = i;
double r59856 = r59854 + r59855;
double r59857 = r59845 / r59856;
double r59858 = 2.9235959509009306e+289;
bool r59859 = r59857 <= r59858;
double r59860 = cbrt(r59837);
double r59861 = r59860 * r59860;
double r59862 = r59861 * r59860;
double r59863 = r59862 + r59838;
double r59864 = r59863 * r59833;
double r59865 = r59864 + r59841;
double r59866 = r59865 * r59833;
double r59867 = r59866 + r59844;
double r59868 = r59867 / r59856;
double r59869 = 0.0;
double r59870 = r59859 ? r59868 : r59869;
return r59870;
}



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 (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) < 2.9235959509009306e+289Initial program 5.6
rmApplied add-cube-cbrt5.7
if 2.9235959509009306e+289 < (/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)) Initial program 63.7
Taylor expanded around 0 61.7
Final simplification28.5
herbie shell --seed 2020081
(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)))