\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\frac{x}{\mathsf{fma}\left(y, e^{2 \cdot \mathsf{fma}\left(c - b, \frac{5}{6} + \left(a - \frac{\frac{2}{t}}{3}\right), \left(\left(\sqrt[3]{z} \cdot \sqrt[3]{z}\right) \cdot \sqrt{t + a}\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 r2604622 = x;
double r2604623 = y;
double r2604624 = 2.0;
double r2604625 = z;
double r2604626 = t;
double r2604627 = a;
double r2604628 = r2604626 + r2604627;
double r2604629 = sqrt(r2604628);
double r2604630 = r2604625 * r2604629;
double r2604631 = r2604630 / r2604626;
double r2604632 = b;
double r2604633 = c;
double r2604634 = r2604632 - r2604633;
double r2604635 = 5.0;
double r2604636 = 6.0;
double r2604637 = r2604635 / r2604636;
double r2604638 = r2604627 + r2604637;
double r2604639 = 3.0;
double r2604640 = r2604626 * r2604639;
double r2604641 = r2604624 / r2604640;
double r2604642 = r2604638 - r2604641;
double r2604643 = r2604634 * r2604642;
double r2604644 = r2604631 - r2604643;
double r2604645 = r2604624 * r2604644;
double r2604646 = exp(r2604645);
double r2604647 = r2604623 * r2604646;
double r2604648 = r2604622 + r2604647;
double r2604649 = r2604622 / r2604648;
return r2604649;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r2604650 = x;
double r2604651 = y;
double r2604652 = 2.0;
double r2604653 = c;
double r2604654 = b;
double r2604655 = r2604653 - r2604654;
double r2604656 = 5.0;
double r2604657 = 6.0;
double r2604658 = r2604656 / r2604657;
double r2604659 = a;
double r2604660 = t;
double r2604661 = r2604652 / r2604660;
double r2604662 = 3.0;
double r2604663 = r2604661 / r2604662;
double r2604664 = r2604659 - r2604663;
double r2604665 = r2604658 + r2604664;
double r2604666 = z;
double r2604667 = cbrt(r2604666);
double r2604668 = r2604667 * r2604667;
double r2604669 = r2604660 + r2604659;
double r2604670 = sqrt(r2604669);
double r2604671 = r2604668 * r2604670;
double r2604672 = r2604667 / r2604660;
double r2604673 = r2604671 * r2604672;
double r2604674 = fma(r2604655, r2604665, r2604673);
double r2604675 = r2604652 * r2604674;
double r2604676 = exp(r2604675);
double r2604677 = fma(r2604651, r2604676, r2604650);
double r2604678 = r2604650 / r2604677;
return r2604678;
}



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