\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{1}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)} \cdot \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, \mathsf{fma}\left(y, x, z\right), 27464.7644705\right), 230661.510616\right), t\right)double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r1081212 = x;
double r1081213 = y;
double r1081214 = r1081212 * r1081213;
double r1081215 = z;
double r1081216 = r1081214 + r1081215;
double r1081217 = r1081216 * r1081213;
double r1081218 = 27464.7644705;
double r1081219 = r1081217 + r1081218;
double r1081220 = r1081219 * r1081213;
double r1081221 = 230661.510616;
double r1081222 = r1081220 + r1081221;
double r1081223 = r1081222 * r1081213;
double r1081224 = t;
double r1081225 = r1081223 + r1081224;
double r1081226 = a;
double r1081227 = r1081213 + r1081226;
double r1081228 = r1081227 * r1081213;
double r1081229 = b;
double r1081230 = r1081228 + r1081229;
double r1081231 = r1081230 * r1081213;
double r1081232 = c;
double r1081233 = r1081231 + r1081232;
double r1081234 = r1081233 * r1081213;
double r1081235 = i;
double r1081236 = r1081234 + r1081235;
double r1081237 = r1081225 / r1081236;
return r1081237;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r1081238 = 1.0;
double r1081239 = y;
double r1081240 = a;
double r1081241 = r1081239 + r1081240;
double r1081242 = b;
double r1081243 = fma(r1081241, r1081239, r1081242);
double r1081244 = c;
double r1081245 = fma(r1081239, r1081243, r1081244);
double r1081246 = i;
double r1081247 = fma(r1081245, r1081239, r1081246);
double r1081248 = r1081238 / r1081247;
double r1081249 = x;
double r1081250 = z;
double r1081251 = fma(r1081239, r1081249, r1081250);
double r1081252 = 27464.7644705;
double r1081253 = fma(r1081239, r1081251, r1081252);
double r1081254 = 230661.510616;
double r1081255 = fma(r1081239, r1081253, r1081254);
double r1081256 = t;
double r1081257 = fma(r1081239, r1081255, r1081256);
double r1081258 = r1081248 * r1081257;
return r1081258;
}



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 28.3
Simplified28.3
rmApplied div-inv28.4
Final simplification28.4
herbie shell --seed 2019153 +o rules:numerics
(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)))