\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)}}\begin{array}{l}
\mathbf{if}\;t \le \frac{-3044132996692187}{1.852673427797059126777135760139006525652 \cdot 10^{78}} \lor \neg \left(t \le \frac{8271322624711839}{1.774508604237321510130185077851573570199 \cdot 10^{131}}\right):\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \frac{\left(z \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) + \left(-\sqrt[3]{t} \cdot \left(\sqrt[3]{t} \cdot \left(\left(b - c\right) \cdot \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot \left(t \cdot 3\right) - \left(a - \frac{5}{6}\right) \cdot 2\right)\right)\right)\right)}{\sqrt[3]{t} \cdot \left(\sqrt[3]{t} \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right)\right)}}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r111332 = x;
double r111333 = y;
double r111334 = 2.0;
double r111335 = z;
double r111336 = t;
double r111337 = a;
double r111338 = r111336 + r111337;
double r111339 = sqrt(r111338);
double r111340 = r111335 * r111339;
double r111341 = r111340 / r111336;
double r111342 = b;
double r111343 = c;
double r111344 = r111342 - r111343;
double r111345 = 5.0;
double r111346 = 6.0;
double r111347 = r111345 / r111346;
double r111348 = r111337 + r111347;
double r111349 = 3.0;
double r111350 = r111336 * r111349;
double r111351 = r111334 / r111350;
double r111352 = r111348 - r111351;
double r111353 = r111344 * r111352;
double r111354 = r111341 - r111353;
double r111355 = r111334 * r111354;
double r111356 = exp(r111355);
double r111357 = r111333 * r111356;
double r111358 = r111332 + r111357;
double r111359 = r111332 / r111358;
return r111359;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r111360 = t;
double r111361 = -3044132996692187.0;
double r111362 = 1.8526734277970591e+78;
double r111363 = r111361 / r111362;
bool r111364 = r111360 <= r111363;
double r111365 = 8271322624711839.0;
double r111366 = 1.7745086042373215e+131;
double r111367 = r111365 / r111366;
bool r111368 = r111360 <= r111367;
double r111369 = !r111368;
bool r111370 = r111364 || r111369;
double r111371 = x;
double r111372 = y;
double r111373 = 2.0;
double r111374 = z;
double r111375 = cbrt(r111360);
double r111376 = r111375 * r111375;
double r111377 = r111374 / r111376;
double r111378 = a;
double r111379 = r111360 + r111378;
double r111380 = sqrt(r111379);
double r111381 = r111380 / r111375;
double r111382 = r111377 * r111381;
double r111383 = b;
double r111384 = c;
double r111385 = r111383 - r111384;
double r111386 = 5.0;
double r111387 = 6.0;
double r111388 = r111386 / r111387;
double r111389 = r111378 + r111388;
double r111390 = 3.0;
double r111391 = r111360 * r111390;
double r111392 = r111373 / r111391;
double r111393 = r111389 - r111392;
double r111394 = r111385 * r111393;
double r111395 = r111382 - r111394;
double r111396 = r111373 * r111395;
double r111397 = exp(r111396);
double r111398 = r111372 * r111397;
double r111399 = r111371 + r111398;
double r111400 = r111371 / r111399;
double r111401 = r111374 * r111381;
double r111402 = r111378 - r111388;
double r111403 = r111402 * r111391;
double r111404 = r111401 * r111403;
double r111405 = r111378 * r111378;
double r111406 = r111388 * r111388;
double r111407 = r111405 - r111406;
double r111408 = r111407 * r111391;
double r111409 = r111402 * r111373;
double r111410 = r111408 - r111409;
double r111411 = r111385 * r111410;
double r111412 = r111375 * r111411;
double r111413 = r111375 * r111412;
double r111414 = -r111413;
double r111415 = r111404 + r111414;
double r111416 = r111375 * r111403;
double r111417 = r111375 * r111416;
double r111418 = r111415 / r111417;
double r111419 = r111373 * r111418;
double r111420 = exp(r111419);
double r111421 = r111372 * r111420;
double r111422 = r111371 + r111421;
double r111423 = r111371 / r111422;
double r111424 = r111370 ? r111400 : r111423;
return r111424;
}



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
if t < -1.6431028539724054e-63 or 4.661190486741443e-116 < t Initial program 2.3
rmApplied add-cube-cbrt2.3
Applied times-frac0.5
if -1.6431028539724054e-63 < t < 4.661190486741443e-116Initial program 6.6
rmApplied add-cube-cbrt6.6
Applied times-frac6.8
rmApplied add-log-exp33.0
rmApplied flip-+34.8
Applied frac-sub34.8
Applied associate-*r/34.8
Applied associate-*l/34.9
Applied frac-sub46.1
Simplified32.1
Simplified6.7
Final simplification2.6
herbie shell --seed 2019303
(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)))))))))))