\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{\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)}{\mathsf{fma}\left(\mathsf{fma}\left(y, \mathsf{fma}\left(y + a, y, b\right), c\right), y, i\right)}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2014190 = x;
double r2014191 = y;
double r2014192 = r2014190 * r2014191;
double r2014193 = z;
double r2014194 = r2014192 + r2014193;
double r2014195 = r2014194 * r2014191;
double r2014196 = 27464.7644705;
double r2014197 = r2014195 + r2014196;
double r2014198 = r2014197 * r2014191;
double r2014199 = 230661.510616;
double r2014200 = r2014198 + r2014199;
double r2014201 = r2014200 * r2014191;
double r2014202 = t;
double r2014203 = r2014201 + r2014202;
double r2014204 = a;
double r2014205 = r2014191 + r2014204;
double r2014206 = r2014205 * r2014191;
double r2014207 = b;
double r2014208 = r2014206 + r2014207;
double r2014209 = r2014208 * r2014191;
double r2014210 = c;
double r2014211 = r2014209 + r2014210;
double r2014212 = r2014211 * r2014191;
double r2014213 = i;
double r2014214 = r2014212 + r2014213;
double r2014215 = r2014203 / r2014214;
return r2014215;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2014216 = y;
double r2014217 = x;
double r2014218 = z;
double r2014219 = fma(r2014216, r2014217, r2014218);
double r2014220 = 27464.7644705;
double r2014221 = fma(r2014216, r2014219, r2014220);
double r2014222 = 230661.510616;
double r2014223 = fma(r2014216, r2014221, r2014222);
double r2014224 = t;
double r2014225 = fma(r2014216, r2014223, r2014224);
double r2014226 = a;
double r2014227 = r2014216 + r2014226;
double r2014228 = b;
double r2014229 = fma(r2014227, r2014216, r2014228);
double r2014230 = c;
double r2014231 = fma(r2014216, r2014229, r2014230);
double r2014232 = i;
double r2014233 = fma(r2014231, r2014216, r2014232);
double r2014234 = r2014225 / r2014233;
return r2014234;
}



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
Final simplification28.3
herbie shell --seed 2019135 +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)))