\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}{\mathsf{fma}\left(\mathsf{fma}\left(\mathsf{fma}\left(y + a, y, b\right), y, c\right), y, i\right) \cdot 1}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r93481 = x;
double r93482 = y;
double r93483 = r93481 * r93482;
double r93484 = z;
double r93485 = r93483 + r93484;
double r93486 = r93485 * r93482;
double r93487 = 27464.7644705;
double r93488 = r93486 + r93487;
double r93489 = r93488 * r93482;
double r93490 = 230661.510616;
double r93491 = r93489 + r93490;
double r93492 = r93491 * r93482;
double r93493 = t;
double r93494 = r93492 + r93493;
double r93495 = a;
double r93496 = r93482 + r93495;
double r93497 = r93496 * r93482;
double r93498 = b;
double r93499 = r93497 + r93498;
double r93500 = r93499 * r93482;
double r93501 = c;
double r93502 = r93500 + r93501;
double r93503 = r93502 * r93482;
double r93504 = i;
double r93505 = r93503 + r93504;
double r93506 = r93494 / r93505;
return r93506;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r93507 = x;
double r93508 = y;
double r93509 = r93507 * r93508;
double r93510 = z;
double r93511 = r93509 + r93510;
double r93512 = r93511 * r93508;
double r93513 = 27464.7644705;
double r93514 = r93512 + r93513;
double r93515 = r93514 * r93508;
double r93516 = 230661.510616;
double r93517 = r93515 + r93516;
double r93518 = r93517 * r93508;
double r93519 = t;
double r93520 = r93518 + r93519;
double r93521 = 1.0;
double r93522 = a;
double r93523 = r93508 + r93522;
double r93524 = b;
double r93525 = fma(r93523, r93508, r93524);
double r93526 = c;
double r93527 = fma(r93525, r93508, r93526);
double r93528 = i;
double r93529 = fma(r93527, r93508, r93528);
double r93530 = r93529 * r93521;
double r93531 = r93521 / r93530;
double r93532 = r93520 * r93531;
return r93532;
}



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.1
rmApplied div-inv29.2
Simplified29.2
Final simplification29.2
herbie shell --seed 2020001 +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)))