\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}\left(t + \left(y \cdot \left(y \cdot \left(z + x \cdot y\right) + 27464.7644705\right) + 230661.510616\right) \cdot y\right) \cdot \frac{1}{y \cdot \left(c + y \cdot \left(b + \left(y + a\right) \cdot y\right)\right) + i}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2745540 = x;
double r2745541 = y;
double r2745542 = r2745540 * r2745541;
double r2745543 = z;
double r2745544 = r2745542 + r2745543;
double r2745545 = r2745544 * r2745541;
double r2745546 = 27464.7644705;
double r2745547 = r2745545 + r2745546;
double r2745548 = r2745547 * r2745541;
double r2745549 = 230661.510616;
double r2745550 = r2745548 + r2745549;
double r2745551 = r2745550 * r2745541;
double r2745552 = t;
double r2745553 = r2745551 + r2745552;
double r2745554 = a;
double r2745555 = r2745541 + r2745554;
double r2745556 = r2745555 * r2745541;
double r2745557 = b;
double r2745558 = r2745556 + r2745557;
double r2745559 = r2745558 * r2745541;
double r2745560 = c;
double r2745561 = r2745559 + r2745560;
double r2745562 = r2745561 * r2745541;
double r2745563 = i;
double r2745564 = r2745562 + r2745563;
double r2745565 = r2745553 / r2745564;
return r2745565;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r2745566 = t;
double r2745567 = y;
double r2745568 = z;
double r2745569 = x;
double r2745570 = r2745569 * r2745567;
double r2745571 = r2745568 + r2745570;
double r2745572 = r2745567 * r2745571;
double r2745573 = 27464.7644705;
double r2745574 = r2745572 + r2745573;
double r2745575 = r2745567 * r2745574;
double r2745576 = 230661.510616;
double r2745577 = r2745575 + r2745576;
double r2745578 = r2745577 * r2745567;
double r2745579 = r2745566 + r2745578;
double r2745580 = 1.0;
double r2745581 = c;
double r2745582 = b;
double r2745583 = a;
double r2745584 = r2745567 + r2745583;
double r2745585 = r2745584 * r2745567;
double r2745586 = r2745582 + r2745585;
double r2745587 = r2745567 * r2745586;
double r2745588 = r2745581 + r2745587;
double r2745589 = r2745567 * r2745588;
double r2745590 = i;
double r2745591 = r2745589 + r2745590;
double r2745592 = r2745580 / r2745591;
double r2745593 = r2745579 * r2745592;
return r2745593;
}



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.0
rmApplied add-cube-cbrt29.2
Applied associate-*l*29.2
rmApplied div-inv29.2
Simplified29.0
Final simplification29.0
herbie shell --seed 2019168
(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)))