\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}\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(x, y, z\right), y, 27464.764470499998\right), y, 230661.510616000014\right), y, t\right) \cdot \frac{1}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right)}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r77284 = x;
double r77285 = y;
double r77286 = r77284 * r77285;
double r77287 = z;
double r77288 = r77286 + r77287;
double r77289 = r77288 * r77285;
double r77290 = 27464.7644705;
double r77291 = r77289 + r77290;
double r77292 = r77291 * r77285;
double r77293 = 230661.510616;
double r77294 = r77292 + r77293;
double r77295 = r77294 * r77285;
double r77296 = t;
double r77297 = r77295 + r77296;
double r77298 = a;
double r77299 = r77285 + r77298;
double r77300 = r77299 * r77285;
double r77301 = b;
double r77302 = r77300 + r77301;
double r77303 = r77302 * r77285;
double r77304 = c;
double r77305 = r77303 + r77304;
double r77306 = r77305 * r77285;
double r77307 = i;
double r77308 = r77306 + r77307;
double r77309 = r77297 / r77308;
return r77309;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r77310 = x;
double r77311 = y;
double r77312 = z;
double r77313 = fma(r77310, r77311, r77312);
double r77314 = 27464.7644705;
double r77315 = fma(r77313, r77311, r77314);
double r77316 = 230661.510616;
double r77317 = fma(r77315, r77311, r77316);
double r77318 = t;
double r77319 = fma(r77317, r77311, r77318);
double r77320 = 1.0;
double r77321 = a;
double r77322 = r77311 + r77321;
double r77323 = b;
double r77324 = fma(r77322, r77311, r77323);
double r77325 = c;
double r77326 = fma(r77324, r77311, r77325);
double r77327 = i;
double r77328 = fma(r77326, r77311, r77327);
double r77329 = r77320 / r77328;
double r77330 = r77319 * r77329;
return r77330;
}



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.4
Simplified29.4
rmApplied div-inv29.5
Final simplification29.5
herbie shell --seed 2020042 +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)))