\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}\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}{\left(\mathsf{fma}\left(y, b, \mathsf{fma}\left(y \cdot y, a, {y}^{3}\right)\right) + c\right) \cdot y + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r75978 = x;
double r75979 = y;
double r75980 = r75978 * r75979;
double r75981 = z;
double r75982 = r75980 + r75981;
double r75983 = r75982 * r75979;
double r75984 = 27464.7644705;
double r75985 = r75983 + r75984;
double r75986 = r75985 * r75979;
double r75987 = 230661.510616;
double r75988 = r75986 + r75987;
double r75989 = r75988 * r75979;
double r75990 = t;
double r75991 = r75989 + r75990;
double r75992 = a;
double r75993 = r75979 + r75992;
double r75994 = r75993 * r75979;
double r75995 = b;
double r75996 = r75994 + r75995;
double r75997 = r75996 * r75979;
double r75998 = c;
double r75999 = r75997 + r75998;
double r76000 = r75999 * r75979;
double r76001 = i;
double r76002 = r76000 + r76001;
double r76003 = r75991 / r76002;
return r76003;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r76004 = x;
double r76005 = y;
double r76006 = r76004 * r76005;
double r76007 = z;
double r76008 = r76006 + r76007;
double r76009 = r76008 * r76005;
double r76010 = 27464.7644705;
double r76011 = r76009 + r76010;
double r76012 = r76011 * r76005;
double r76013 = 230661.510616;
double r76014 = r76012 + r76013;
double r76015 = r76014 * r76005;
double r76016 = t;
double r76017 = r76015 + r76016;
double r76018 = b;
double r76019 = r76005 * r76005;
double r76020 = a;
double r76021 = 3.0;
double r76022 = pow(r76005, r76021);
double r76023 = fma(r76019, r76020, r76022);
double r76024 = fma(r76005, r76018, r76023);
double r76025 = c;
double r76026 = r76024 + r76025;
double r76027 = r76026 * r76005;
double r76028 = i;
double r76029 = r76027 + r76028;
double r76030 = r76017 / r76029;
return r76030;
}



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
Initial program 29.5
Taylor expanded around inf 29.5
Simplified29.5
Final simplification29.5
herbie shell --seed 2020046 +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)))