\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644705\right) \cdot y + 230661.510616\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\frac{\left(230661.510616 + \left(27464.7644705 + \left(y \cdot \left(x \cdot y\right) + z \cdot y\right)\right) \cdot y\right) \cdot y + t}{i + y \cdot \left(\left(\left(a + y\right) \cdot y + b\right) \cdot y + c\right)}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2515978 = x;
double r2515979 = y;
double r2515980 = r2515978 * r2515979;
double r2515981 = z;
double r2515982 = r2515980 + r2515981;
double r2515983 = r2515982 * r2515979;
double r2515984 = 27464.7644705;
double r2515985 = r2515983 + r2515984;
double r2515986 = r2515985 * r2515979;
double r2515987 = 230661.510616;
double r2515988 = r2515986 + r2515987;
double r2515989 = r2515988 * r2515979;
double r2515990 = t;
double r2515991 = r2515989 + r2515990;
double r2515992 = a;
double r2515993 = r2515979 + r2515992;
double r2515994 = r2515993 * r2515979;
double r2515995 = b;
double r2515996 = r2515994 + r2515995;
double r2515997 = r2515996 * r2515979;
double r2515998 = c;
double r2515999 = r2515997 + r2515998;
double r2516000 = r2515999 * r2515979;
double r2516001 = i;
double r2516002 = r2516000 + r2516001;
double r2516003 = r2515991 / r2516002;
return r2516003;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2516004 = 230661.510616;
double r2516005 = 27464.7644705;
double r2516006 = y;
double r2516007 = x;
double r2516008 = r2516007 * r2516006;
double r2516009 = r2516006 * r2516008;
double r2516010 = z;
double r2516011 = r2516010 * r2516006;
double r2516012 = r2516009 + r2516011;
double r2516013 = r2516005 + r2516012;
double r2516014 = r2516013 * r2516006;
double r2516015 = r2516004 + r2516014;
double r2516016 = r2516015 * r2516006;
double r2516017 = t;
double r2516018 = r2516016 + r2516017;
double r2516019 = i;
double r2516020 = a;
double r2516021 = r2516020 + r2516006;
double r2516022 = r2516021 * r2516006;
double r2516023 = b;
double r2516024 = r2516022 + r2516023;
double r2516025 = r2516024 * r2516006;
double r2516026 = c;
double r2516027 = r2516025 + r2516026;
double r2516028 = r2516006 * r2516027;
double r2516029 = r2516019 + r2516028;
double r2516030 = r2516018 / r2516029;
return r2516030;
}



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
Initial program 28.4
Taylor expanded around 0 28.4
Simplified28.4
Final simplification28.4
herbie shell --seed 2019165
(FPCore (x y z t a b c i)
:name "Numeric.SpecFunctions:logGamma from math-functions-0.1.5.2"
(/ (+ (* (+ (* (+ (* (+ (* x y) z) y) 27464.7644705) y) 230661.510616) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))