\frac{x}{x + y \cdot e^{2.0 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right)\right)}}\frac{x}{\mathsf{fma}\left(y, e^{2.0 \cdot \mathsf{fma}\left(c - b, \frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{a + t}}{\sqrt[3]{t}}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r2149640 = x;
double r2149641 = y;
double r2149642 = 2.0;
double r2149643 = z;
double r2149644 = t;
double r2149645 = a;
double r2149646 = r2149644 + r2149645;
double r2149647 = sqrt(r2149646);
double r2149648 = r2149643 * r2149647;
double r2149649 = r2149648 / r2149644;
double r2149650 = b;
double r2149651 = c;
double r2149652 = r2149650 - r2149651;
double r2149653 = 5.0;
double r2149654 = 6.0;
double r2149655 = r2149653 / r2149654;
double r2149656 = r2149645 + r2149655;
double r2149657 = 3.0;
double r2149658 = r2149644 * r2149657;
double r2149659 = r2149642 / r2149658;
double r2149660 = r2149656 - r2149659;
double r2149661 = r2149652 * r2149660;
double r2149662 = r2149649 - r2149661;
double r2149663 = r2149642 * r2149662;
double r2149664 = exp(r2149663);
double r2149665 = r2149641 * r2149664;
double r2149666 = r2149640 + r2149665;
double r2149667 = r2149640 / r2149666;
return r2149667;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r2149668 = x;
double r2149669 = y;
double r2149670 = 2.0;
double r2149671 = c;
double r2149672 = b;
double r2149673 = r2149671 - r2149672;
double r2149674 = 5.0;
double r2149675 = 6.0;
double r2149676 = r2149674 / r2149675;
double r2149677 = t;
double r2149678 = r2149670 / r2149677;
double r2149679 = 3.0;
double r2149680 = r2149678 / r2149679;
double r2149681 = a;
double r2149682 = r2149680 - r2149681;
double r2149683 = r2149676 - r2149682;
double r2149684 = z;
double r2149685 = cbrt(r2149677);
double r2149686 = r2149685 * r2149685;
double r2149687 = r2149684 / r2149686;
double r2149688 = r2149681 + r2149677;
double r2149689 = sqrt(r2149688);
double r2149690 = r2149689 / r2149685;
double r2149691 = r2149687 * r2149690;
double r2149692 = fma(r2149673, r2149683, r2149691);
double r2149693 = r2149670 * r2149692;
double r2149694 = exp(r2149693);
double r2149695 = fma(r2149669, r2149694, r2149668);
double r2149696 = r2149668 / r2149695;
return r2149696;
}



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
Initial program 3.8
Simplified2.1
rmApplied add-cube-cbrt2.1
Applied *-un-lft-identity2.1
Applied *-un-lft-identity2.1
Applied distribute-lft-out2.1
Applied sqrt-prod2.1
Applied times-frac2.1
Applied associate-*r*1.4
Simplified1.4
Final simplification1.4
herbie shell --seed 2019143 +o rules:numerics
(FPCore (x y z t a b c)
:name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
(/ x (+ x (* y (exp (* 2.0 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5.0 6.0)) (/ 2.0 (* t 3.0)))))))))))