\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^{2.0 \cdot \log \left(e^{\frac{\sqrt{a + t}}{\sqrt[3]{t}} \cdot \frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} - \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)}\right)}}double f(double x, double y, double z, double t, double a, double b, double c) {
double r20005440 = x;
double r20005441 = y;
double r20005442 = 2.0;
double r20005443 = z;
double r20005444 = t;
double r20005445 = a;
double r20005446 = r20005444 + r20005445;
double r20005447 = sqrt(r20005446);
double r20005448 = r20005443 * r20005447;
double r20005449 = r20005448 / r20005444;
double r20005450 = b;
double r20005451 = c;
double r20005452 = r20005450 - r20005451;
double r20005453 = 5.0;
double r20005454 = 6.0;
double r20005455 = r20005453 / r20005454;
double r20005456 = r20005445 + r20005455;
double r20005457 = 3.0;
double r20005458 = r20005444 * r20005457;
double r20005459 = r20005442 / r20005458;
double r20005460 = r20005456 - r20005459;
double r20005461 = r20005452 * r20005460;
double r20005462 = r20005449 - r20005461;
double r20005463 = r20005442 * r20005462;
double r20005464 = exp(r20005463);
double r20005465 = r20005441 * r20005464;
double r20005466 = r20005440 + r20005465;
double r20005467 = r20005440 / r20005466;
return r20005467;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r20005468 = x;
double r20005469 = y;
double r20005470 = 2.0;
double r20005471 = a;
double r20005472 = t;
double r20005473 = r20005471 + r20005472;
double r20005474 = sqrt(r20005473);
double r20005475 = cbrt(r20005472);
double r20005476 = r20005474 / r20005475;
double r20005477 = z;
double r20005478 = r20005475 * r20005475;
double r20005479 = r20005477 / r20005478;
double r20005480 = r20005476 * r20005479;
double r20005481 = 5.0;
double r20005482 = 6.0;
double r20005483 = r20005481 / r20005482;
double r20005484 = r20005471 + r20005483;
double r20005485 = 3.0;
double r20005486 = r20005472 * r20005485;
double r20005487 = r20005470 / r20005486;
double r20005488 = r20005484 - r20005487;
double r20005489 = b;
double r20005490 = c;
double r20005491 = r20005489 - r20005490;
double r20005492 = r20005488 * r20005491;
double r20005493 = r20005480 - r20005492;
double r20005494 = exp(r20005493);
double r20005495 = log(r20005494);
double r20005496 = r20005470 * r20005495;
double r20005497 = exp(r20005496);
double r20005498 = r20005469 * r20005497;
double r20005499 = r20005468 + r20005498;
double r20005500 = r20005468 / r20005499;
return r20005500;
}



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
Results
Initial program 3.9
rmApplied add-cube-cbrt3.9
Applied times-frac2.6
rmApplied add-log-exp2.6
Final simplification2.6
herbie shell --seed 2019119
(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)))))))))))