\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, \left(e^{2.0 \cdot \mathsf{fma}\left(\left(\frac{\sqrt[3]{z}}{\sqrt[3]{t}} \cdot \frac{\sqrt[3]{z}}{\sqrt[3]{t}}\right), \left(\frac{\sqrt{t + a}}{\frac{\sqrt[3]{t}}{\sqrt[3]{z}}}\right), \left(\left(-\left(b - c\right)\right) \cdot \left(\left(a - \frac{2.0}{3.0 \cdot t}\right) + \frac{5.0}{6.0}\right)\right)\right)}\right), x\right)}double f(double x, double y, double z, double t, double a, double b, double c) {
double r29658368 = x;
double r29658369 = y;
double r29658370 = 2.0;
double r29658371 = z;
double r29658372 = t;
double r29658373 = a;
double r29658374 = r29658372 + r29658373;
double r29658375 = sqrt(r29658374);
double r29658376 = r29658371 * r29658375;
double r29658377 = r29658376 / r29658372;
double r29658378 = b;
double r29658379 = c;
double r29658380 = r29658378 - r29658379;
double r29658381 = 5.0;
double r29658382 = 6.0;
double r29658383 = r29658381 / r29658382;
double r29658384 = r29658373 + r29658383;
double r29658385 = 3.0;
double r29658386 = r29658372 * r29658385;
double r29658387 = r29658370 / r29658386;
double r29658388 = r29658384 - r29658387;
double r29658389 = r29658380 * r29658388;
double r29658390 = r29658377 - r29658389;
double r29658391 = r29658370 * r29658390;
double r29658392 = exp(r29658391);
double r29658393 = r29658369 * r29658392;
double r29658394 = r29658368 + r29658393;
double r29658395 = r29658368 / r29658394;
return r29658395;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r29658396 = x;
double r29658397 = y;
double r29658398 = 2.0;
double r29658399 = z;
double r29658400 = cbrt(r29658399);
double r29658401 = t;
double r29658402 = cbrt(r29658401);
double r29658403 = r29658400 / r29658402;
double r29658404 = r29658403 * r29658403;
double r29658405 = a;
double r29658406 = r29658401 + r29658405;
double r29658407 = sqrt(r29658406);
double r29658408 = r29658402 / r29658400;
double r29658409 = r29658407 / r29658408;
double r29658410 = b;
double r29658411 = c;
double r29658412 = r29658410 - r29658411;
double r29658413 = -r29658412;
double r29658414 = 3.0;
double r29658415 = r29658414 * r29658401;
double r29658416 = r29658398 / r29658415;
double r29658417 = r29658405 - r29658416;
double r29658418 = 5.0;
double r29658419 = 6.0;
double r29658420 = r29658418 / r29658419;
double r29658421 = r29658417 + r29658420;
double r29658422 = r29658413 * r29658421;
double r29658423 = fma(r29658404, r29658409, r29658422);
double r29658424 = r29658398 * r29658423;
double r29658425 = exp(r29658424);
double r29658426 = fma(r29658397, r29658425, r29658396);
double r29658427 = r29658396 / r29658426;
return r29658427;
}



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
Simplified3.0
rmApplied add-cube-cbrt3.0
Applied add-cube-cbrt3.0
Applied times-frac3.0
Applied *-un-lft-identity3.0
Applied *-un-lft-identity3.0
Applied distribute-lft-out3.0
Applied sqrt-prod3.0
Applied times-frac2.7
Applied fma-neg1.3
Simplified1.3
Final simplification1.3
herbie shell --seed 2019121 +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)))))))))))