\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(\frac{5.0}{6.0} - \left(\frac{\frac{2.0}{t}}{3.0} - a\right), c - b, \left(\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt{a + t}\right) \cdot \frac{\sqrt[3]{z}}{t}\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r2779659 = x;
double r2779660 = y;
double r2779661 = 2.0;
double r2779662 = z;
double r2779663 = t;
double r2779664 = a;
double r2779665 = r2779663 + r2779664;
double r2779666 = sqrt(r2779665);
double r2779667 = r2779662 * r2779666;
double r2779668 = r2779667 / r2779663;
double r2779669 = b;
double r2779670 = c;
double r2779671 = r2779669 - r2779670;
double r2779672 = 5.0;
double r2779673 = 6.0;
double r2779674 = r2779672 / r2779673;
double r2779675 = r2779664 + r2779674;
double r2779676 = 3.0;
double r2779677 = r2779663 * r2779676;
double r2779678 = r2779661 / r2779677;
double r2779679 = r2779675 - r2779678;
double r2779680 = r2779671 * r2779679;
double r2779681 = r2779668 - r2779680;
double r2779682 = r2779661 * r2779681;
double r2779683 = exp(r2779682);
double r2779684 = r2779660 * r2779683;
double r2779685 = r2779659 + r2779684;
double r2779686 = r2779659 / r2779685;
return r2779686;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r2779687 = x;
double r2779688 = y;
double r2779689 = 2.0;
double r2779690 = 5.0;
double r2779691 = 6.0;
double r2779692 = r2779690 / r2779691;
double r2779693 = t;
double r2779694 = r2779689 / r2779693;
double r2779695 = 3.0;
double r2779696 = r2779694 / r2779695;
double r2779697 = a;
double r2779698 = r2779696 - r2779697;
double r2779699 = r2779692 - r2779698;
double r2779700 = c;
double r2779701 = b;
double r2779702 = r2779700 - r2779701;
double r2779703 = z;
double r2779704 = cbrt(r2779703);
double r2779705 = r2779704 * r2779704;
double r2779706 = r2779697 + r2779693;
double r2779707 = sqrt(r2779706);
double r2779708 = r2779705 * r2779707;
double r2779709 = r2779704 / r2779693;
double r2779710 = r2779708 * r2779709;
double r2779711 = fma(r2779699, r2779702, r2779710);
double r2779712 = r2779689 * r2779711;
double r2779713 = exp(r2779712);
double r2779714 = fma(r2779688, r2779713, r2779687);
double r2779715 = r2779687 / r2779714;
return r2779715;
}



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.6
Simplified1.7
rmApplied *-un-lft-identity1.7
Applied add-cube-cbrt1.7
Applied times-frac1.7
Applied associate-*r*1.7
Simplified1.7
Final simplification1.7
herbie shell --seed 2019163 +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)))))))))))