\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, {\left(e^{2}\right)}^{\left(\mathsf{fma}\left(\frac{\frac{2}{t}}{3} - \left(a + \frac{5}{6}\right), b - c, \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right)\right)}, x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r78547 = x;
double r78548 = y;
double r78549 = 2.0;
double r78550 = z;
double r78551 = t;
double r78552 = a;
double r78553 = r78551 + r78552;
double r78554 = sqrt(r78553);
double r78555 = r78550 * r78554;
double r78556 = r78555 / r78551;
double r78557 = b;
double r78558 = c;
double r78559 = r78557 - r78558;
double r78560 = 5.0;
double r78561 = 6.0;
double r78562 = r78560 / r78561;
double r78563 = r78552 + r78562;
double r78564 = 3.0;
double r78565 = r78551 * r78564;
double r78566 = r78549 / r78565;
double r78567 = r78563 - r78566;
double r78568 = r78559 * r78567;
double r78569 = r78556 - r78568;
double r78570 = r78549 * r78569;
double r78571 = exp(r78570);
double r78572 = r78548 * r78571;
double r78573 = r78547 + r78572;
double r78574 = r78547 / r78573;
return r78574;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r78575 = x;
double r78576 = y;
double r78577 = 2.0;
double r78578 = exp(r78577);
double r78579 = t;
double r78580 = r78577 / r78579;
double r78581 = 3.0;
double r78582 = r78580 / r78581;
double r78583 = a;
double r78584 = 5.0;
double r78585 = 6.0;
double r78586 = r78584 / r78585;
double r78587 = r78583 + r78586;
double r78588 = r78582 - r78587;
double r78589 = b;
double r78590 = c;
double r78591 = r78589 - r78590;
double r78592 = z;
double r78593 = cbrt(r78579);
double r78594 = r78593 * r78593;
double r78595 = r78592 / r78594;
double r78596 = r78579 + r78583;
double r78597 = sqrt(r78596);
double r78598 = r78597 / r78593;
double r78599 = r78595 * r78598;
double r78600 = fma(r78588, r78591, r78599);
double r78601 = pow(r78578, r78600);
double r78602 = fma(r78576, r78601, r78575);
double r78603 = r78575 / r78602;
return r78603;
}



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.5
rmApplied add-cube-cbrt2.5
Applied times-frac1.4
Final simplification1.4
herbie shell --seed 2019323 +o rules:numerics
(FPCore (x y z t a b c)
:name "Numeric.SpecFunctions:invIncompleteBetaWorker from math-functions-0.1.5.2"
:precision binary64
(/ x (+ x (* y (exp (* 2 (- (/ (* z (sqrt (+ t a))) t) (* (- b c) (- (+ a (/ 5 6)) (/ 2 (* t 3)))))))))))