double f(double x, double y, double z, double t, double a, double b, double c) {
double r8168554 = x;
double r8168555 = y;
double r8168556 = 2.0;
double r8168557 = z;
double r8168558 = t;
double r8168559 = a;
double r8168560 = r8168558 + r8168559;
double r8168561 = sqrt(r8168560);
double r8168562 = r8168557 * r8168561;
double r8168563 = r8168562 / r8168558;
double r8168564 = b;
double r8168565 = c;
double r8168566 = r8168564 - r8168565;
double r8168567 = 5.0;
double r8168568 = 6.0;
double r8168569 = r8168567 / r8168568;
double r8168570 = r8168559 + r8168569;
double r8168571 = 3.0;
double r8168572 = r8168558 * r8168571;
double r8168573 = r8168556 / r8168572;
double r8168574 = r8168570 - r8168573;
double r8168575 = r8168566 * r8168574;
double r8168576 = r8168563 - r8168575;
double r8168577 = r8168556 * r8168576;
double r8168578 = exp(r8168577);
double r8168579 = r8168555 * r8168578;
double r8168580 = r8168554 + r8168579;
double r8168581 = r8168554 / r8168580;
return r8168581;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r8168582 = x;
double r8168583 = y;
double r8168584 = z;
double r8168585 = t;
double r8168586 = cbrt(r8168585);
double r8168587 = r8168586 * r8168586;
double r8168588 = r8168584 / r8168587;
double r8168589 = a;
double r8168590 = r8168589 + r8168585;
double r8168591 = sqrt(r8168590);
double r8168592 = r8168591 / r8168586;
double r8168593 = b;
double r8168594 = c;
double r8168595 = r8168593 - r8168594;
double r8168596 = -r8168595;
double r8168597 = 5.0;
double r8168598 = 6.0;
double r8168599 = r8168597 / r8168598;
double r8168600 = r8168599 + r8168589;
double r8168601 = 2.0;
double r8168602 = 3.0;
double r8168603 = r8168585 * r8168602;
double r8168604 = r8168601 / r8168603;
double r8168605 = r8168600 - r8168604;
double r8168606 = r8168596 * r8168605;
double r8168607 = fma(r8168588, r8168592, r8168606);
double r8168608 = r8168607 * r8168601;
double r8168609 = exp(r8168608);
double r8168610 = r8168583 * r8168609;
double r8168611 = r8168582 + r8168610;
double r8168612 = r8168582 / r8168611;
return r8168612;
}
\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}{x + y \cdot e^{(\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}}\right) \cdot \left(\frac{\sqrt{a + t}}{\sqrt[3]{t}}\right) + \left(\left(-\left(b - c\right)\right) \cdot \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right)\right))_* \cdot 2.0}}


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
rmApplied add-cube-cbrt3.8
Applied times-frac2.7
Applied fma-neg1.8
Final simplification1.8
herbie shell --seed 2019101 +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)))))))))))