\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 -1.747646842184294811529008447013758285829 \cdot 10^{-63} \lor \neg \left(t \le 4.66119048674144283533835621815974643908 \cdot 10^{-116}\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(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right) \cdot \frac{z \cdot \sqrt{t + a}}{\sqrt[3]{t}} - \left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \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)}{\left(\sqrt[3]{t} \cdot \sqrt[3]{t}\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot \left(t \cdot 3\right)\right)}}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r100348 = x;
double r100349 = y;
double r100350 = 2.0;
double r100351 = z;
double r100352 = t;
double r100353 = a;
double r100354 = r100352 + r100353;
double r100355 = sqrt(r100354);
double r100356 = r100351 * r100355;
double r100357 = r100356 / r100352;
double r100358 = b;
double r100359 = c;
double r100360 = r100358 - r100359;
double r100361 = 5.0;
double r100362 = 6.0;
double r100363 = r100361 / r100362;
double r100364 = r100353 + r100363;
double r100365 = 3.0;
double r100366 = r100352 * r100365;
double r100367 = r100350 / r100366;
double r100368 = r100364 - r100367;
double r100369 = r100360 * r100368;
double r100370 = r100357 - r100369;
double r100371 = r100350 * r100370;
double r100372 = exp(r100371);
double r100373 = r100349 * r100372;
double r100374 = r100348 + r100373;
double r100375 = r100348 / r100374;
return r100375;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r100376 = t;
double r100377 = -1.7476468421842948e-63;
bool r100378 = r100376 <= r100377;
double r100379 = 4.661190486741443e-116;
bool r100380 = r100376 <= r100379;
double r100381 = !r100380;
bool r100382 = r100378 || r100381;
double r100383 = x;
double r100384 = y;
double r100385 = 2.0;
double r100386 = z;
double r100387 = cbrt(r100376);
double r100388 = r100387 * r100387;
double r100389 = r100386 / r100388;
double r100390 = a;
double r100391 = r100376 + r100390;
double r100392 = sqrt(r100391);
double r100393 = r100392 / r100387;
double r100394 = r100389 * r100393;
double r100395 = b;
double r100396 = c;
double r100397 = r100395 - r100396;
double r100398 = 5.0;
double r100399 = 6.0;
double r100400 = r100398 / r100399;
double r100401 = r100390 + r100400;
double r100402 = 3.0;
double r100403 = r100376 * r100402;
double r100404 = r100385 / r100403;
double r100405 = r100401 - r100404;
double r100406 = r100397 * r100405;
double r100407 = r100394 - r100406;
double r100408 = r100385 * r100407;
double r100409 = exp(r100408);
double r100410 = r100384 * r100409;
double r100411 = r100383 + r100410;
double r100412 = r100383 / r100411;
double r100413 = r100390 - r100400;
double r100414 = r100413 * r100403;
double r100415 = r100386 * r100392;
double r100416 = r100415 / r100387;
double r100417 = r100414 * r100416;
double r100418 = r100390 * r100390;
double r100419 = r100400 * r100400;
double r100420 = r100418 - r100419;
double r100421 = r100420 * r100403;
double r100422 = r100413 * r100385;
double r100423 = r100421 - r100422;
double r100424 = r100397 * r100423;
double r100425 = r100388 * r100424;
double r100426 = r100417 - r100425;
double r100427 = r100388 * r100414;
double r100428 = r100426 / r100427;
double r100429 = r100385 * r100428;
double r100430 = exp(r100429);
double r100431 = r100384 * r100430;
double r100432 = r100383 + r100431;
double r100433 = r100383 / r100432;
double r100434 = r100382 ? r100412 : r100433;
return r100434;
}



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.7476468421842948e-63 or 4.661190486741443e-116 < t Initial program 2.3
rmApplied add-cube-cbrt2.3
Applied times-frac0.5
if -1.7476468421842948e-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.8
Applied frac-sub33.9
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)))))))))))