\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}\frac{1}{\left(\left(\left(\left(y + a\right) \cdot y + b\right) \cdot y + c\right) \cdot y + i\right) \cdot \frac{1}{\left(\left(\left(x \cdot y + z\right) \cdot y + 27464.764470499998\right) \cdot y + 230661.510616000014\right) \cdot y + t}}double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r79623 = x;
double r79624 = y;
double r79625 = r79623 * r79624;
double r79626 = z;
double r79627 = r79625 + r79626;
double r79628 = r79627 * r79624;
double r79629 = 27464.7644705;
double r79630 = r79628 + r79629;
double r79631 = r79630 * r79624;
double r79632 = 230661.510616;
double r79633 = r79631 + r79632;
double r79634 = r79633 * r79624;
double r79635 = t;
double r79636 = r79634 + r79635;
double r79637 = a;
double r79638 = r79624 + r79637;
double r79639 = r79638 * r79624;
double r79640 = b;
double r79641 = r79639 + r79640;
double r79642 = r79641 * r79624;
double r79643 = c;
double r79644 = r79642 + r79643;
double r79645 = r79644 * r79624;
double r79646 = i;
double r79647 = r79645 + r79646;
double r79648 = r79636 / r79647;
return r79648;
}
double f(double x, double y, double z, double t, double a, double b, double c, double i) {
double r79649 = 1.0;
double r79650 = y;
double r79651 = a;
double r79652 = r79650 + r79651;
double r79653 = r79652 * r79650;
double r79654 = b;
double r79655 = r79653 + r79654;
double r79656 = r79655 * r79650;
double r79657 = c;
double r79658 = r79656 + r79657;
double r79659 = r79658 * r79650;
double r79660 = i;
double r79661 = r79659 + r79660;
double r79662 = x;
double r79663 = r79662 * r79650;
double r79664 = z;
double r79665 = r79663 + r79664;
double r79666 = r79665 * r79650;
double r79667 = 27464.7644705;
double r79668 = r79666 + r79667;
double r79669 = r79668 * r79650;
double r79670 = 230661.510616;
double r79671 = r79669 + r79670;
double r79672 = r79671 * r79650;
double r79673 = t;
double r79674 = r79672 + r79673;
double r79675 = r79649 / r79674;
double r79676 = r79661 * r79675;
double r79677 = r79649 / r79676;
return r79677;
}



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 28.8
rmApplied clear-num29.1
rmApplied div-inv29.1
Final simplification29.1
herbie shell --seed 2020018
(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)))