\frac{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}\left(\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.7644704999984242022037506103515625\right) \cdot y + 230661.5106160000141244381666183471679688\right) \cdot y + t\right) \cdot \frac{1}{\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r740268 = x;
double r740269 = y;
double r740270 = r740268 * r740269;
double r740271 = z;
double r740272 = r740270 + r740271;
double r740273 = r740272 * r740269;
double r740274 = 27464.7644705;
double r740275 = r740273 + r740274;
double r740276 = r740275 * r740269;
double r740277 = 230661.510616;
double r740278 = r740276 + r740277;
double r740279 = r740278 * r740269;
double r740280 = t;
double r740281 = r740279 + r740280;
double r740282 = a;
double r740283 = r740269 + r740282;
double r740284 = r740283 * r740269;
double r740285 = b;
double r740286 = r740284 + r740285;
double r740287 = r740286 * r740269;
double r740288 = c;
double r740289 = r740287 + r740288;
double r740290 = r740289 * r740269;
double r740291 = i;
double r740292 = r740290 + r740291;
double r740293 = r740281 / r740292;
return r740293;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r740294 = x;
double r740295 = y;
double r740296 = r740294 * r740295;
double r740297 = z;
double r740298 = r740296 + r740297;
double r740299 = r740298 * r740295;
double r740300 = 27464.7644705;
double r740301 = r740299 + r740300;
double r740302 = r740301 * r740295;
double r740303 = 230661.510616;
double r740304 = r740302 + r740303;
double r740305 = r740304 * r740295;
double r740306 = t;
double r740307 = r740305 + r740306;
double r740308 = 1.0;
double r740309 = a;
double r740310 = r740295 + r740309;
double r740311 = r740310 * r740295;
double r740312 = b;
double r740313 = r740311 + r740312;
double r740314 = r740313 * r740295;
double r740315 = c;
double r740316 = r740314 + r740315;
double r740317 = r740316 * r740295;
double r740318 = i;
double r740319 = r740317 + r740318;
double r740320 = r740308 / r740319;
double r740321 = r740307 * r740320;
return r740321;
}



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 29.5
rmApplied div-inv29.5
Final simplification29.5
herbie shell --seed 2019209
(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.764470499998) y) 230661.510616000014) y) t) (+ (* (+ (* (+ (* (+ y a) y) b) y) c) y) i)))