\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 r52456 = x;
double r52457 = y;
double r52458 = 2.0;
double r52459 = z;
double r52460 = t;
double r52461 = a;
double r52462 = r52460 + r52461;
double r52463 = sqrt(r52462);
double r52464 = r52459 * r52463;
double r52465 = r52464 / r52460;
double r52466 = b;
double r52467 = c;
double r52468 = r52466 - r52467;
double r52469 = 5.0;
double r52470 = 6.0;
double r52471 = r52469 / r52470;
double r52472 = r52461 + r52471;
double r52473 = 3.0;
double r52474 = r52460 * r52473;
double r52475 = r52458 / r52474;
double r52476 = r52472 - r52475;
double r52477 = r52468 * r52476;
double r52478 = r52465 - r52477;
double r52479 = r52458 * r52478;
double r52480 = exp(r52479);
double r52481 = r52457 * r52480;
double r52482 = r52456 + r52481;
double r52483 = r52456 / r52482;
return r52483;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r52484 = x;
double r52485 = y;
double r52486 = 2.0;
double r52487 = exp(r52486);
double r52488 = t;
double r52489 = r52486 / r52488;
double r52490 = 3.0;
double r52491 = r52489 / r52490;
double r52492 = a;
double r52493 = 5.0;
double r52494 = 6.0;
double r52495 = r52493 / r52494;
double r52496 = r52492 + r52495;
double r52497 = r52491 - r52496;
double r52498 = b;
double r52499 = c;
double r52500 = r52498 - r52499;
double r52501 = z;
double r52502 = cbrt(r52488);
double r52503 = r52502 * r52502;
double r52504 = r52501 / r52503;
double r52505 = r52488 + r52492;
double r52506 = sqrt(r52505);
double r52507 = r52506 / r52502;
double r52508 = r52504 * r52507;
double r52509 = fma(r52497, r52500, r52508);
double r52510 = pow(r52487, r52509);
double r52511 = fma(r52485, r52510, r52484);
double r52512 = r52484 / r52511;
return r52512;
}



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 4.0
Simplified2.6
rmApplied add-cube-cbrt2.6
Applied times-frac1.6
Final simplification1.6
herbie shell --seed 2019198 +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)))))))))))