\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}\;a \le -1.261181977315073190059434568255866235012 \cdot 10^{103}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\log \left(e^{\sqrt[3]{t}}\right)} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right) \cdot 2}}\\
\mathbf{elif}\;a \le 1.392355474446630492888563594513676627677 \cdot 10^{109}:\\
\;\;\;\;\frac{x}{y \cdot e^{2 \cdot \frac{\left(\sqrt{t + a} \cdot z\right) \cdot \left(\left(a - \frac{5}{6}\right) \cdot 3\right) - \left(\left(a \cdot a - \frac{5}{6} \cdot \frac{5}{6}\right) \cdot 3 - \left(a - \frac{5}{6}\right) \cdot \frac{2}{t}\right) \cdot \left(\left(b - c\right) \cdot t\right)}{3 \cdot \left(t \cdot \left(a - \frac{5}{6}\right)\right)}} + x}\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\log \left(e^{\sqrt[3]{t}}\right)} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - \frac{2}{t \cdot 3}\right)\right) \cdot 2}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r4222488 = x;
double r4222489 = y;
double r4222490 = 2.0;
double r4222491 = z;
double r4222492 = t;
double r4222493 = a;
double r4222494 = r4222492 + r4222493;
double r4222495 = sqrt(r4222494);
double r4222496 = r4222491 * r4222495;
double r4222497 = r4222496 / r4222492;
double r4222498 = b;
double r4222499 = c;
double r4222500 = r4222498 - r4222499;
double r4222501 = 5.0;
double r4222502 = 6.0;
double r4222503 = r4222501 / r4222502;
double r4222504 = r4222493 + r4222503;
double r4222505 = 3.0;
double r4222506 = r4222492 * r4222505;
double r4222507 = r4222490 / r4222506;
double r4222508 = r4222504 - r4222507;
double r4222509 = r4222500 * r4222508;
double r4222510 = r4222497 - r4222509;
double r4222511 = r4222490 * r4222510;
double r4222512 = exp(r4222511);
double r4222513 = r4222489 * r4222512;
double r4222514 = r4222488 + r4222513;
double r4222515 = r4222488 / r4222514;
return r4222515;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r4222516 = a;
double r4222517 = -1.2611819773150732e+103;
bool r4222518 = r4222516 <= r4222517;
double r4222519 = x;
double r4222520 = y;
double r4222521 = z;
double r4222522 = t;
double r4222523 = cbrt(r4222522);
double r4222524 = r4222523 * r4222523;
double r4222525 = r4222521 / r4222524;
double r4222526 = r4222522 + r4222516;
double r4222527 = sqrt(r4222526);
double r4222528 = exp(r4222523);
double r4222529 = log(r4222528);
double r4222530 = r4222527 / r4222529;
double r4222531 = r4222525 * r4222530;
double r4222532 = b;
double r4222533 = c;
double r4222534 = r4222532 - r4222533;
double r4222535 = 5.0;
double r4222536 = 6.0;
double r4222537 = r4222535 / r4222536;
double r4222538 = r4222516 + r4222537;
double r4222539 = 2.0;
double r4222540 = 3.0;
double r4222541 = r4222522 * r4222540;
double r4222542 = r4222539 / r4222541;
double r4222543 = r4222538 - r4222542;
double r4222544 = r4222534 * r4222543;
double r4222545 = r4222531 - r4222544;
double r4222546 = r4222545 * r4222539;
double r4222547 = exp(r4222546);
double r4222548 = r4222520 * r4222547;
double r4222549 = r4222519 + r4222548;
double r4222550 = r4222519 / r4222549;
double r4222551 = 1.3923554744466305e+109;
bool r4222552 = r4222516 <= r4222551;
double r4222553 = r4222527 * r4222521;
double r4222554 = r4222516 - r4222537;
double r4222555 = r4222554 * r4222540;
double r4222556 = r4222553 * r4222555;
double r4222557 = r4222516 * r4222516;
double r4222558 = r4222537 * r4222537;
double r4222559 = r4222557 - r4222558;
double r4222560 = r4222559 * r4222540;
double r4222561 = r4222539 / r4222522;
double r4222562 = r4222554 * r4222561;
double r4222563 = r4222560 - r4222562;
double r4222564 = r4222534 * r4222522;
double r4222565 = r4222563 * r4222564;
double r4222566 = r4222556 - r4222565;
double r4222567 = r4222522 * r4222554;
double r4222568 = r4222540 * r4222567;
double r4222569 = r4222566 / r4222568;
double r4222570 = r4222539 * r4222569;
double r4222571 = exp(r4222570);
double r4222572 = r4222520 * r4222571;
double r4222573 = r4222572 + r4222519;
double r4222574 = r4222519 / r4222573;
double r4222575 = r4222552 ? r4222574 : r4222550;
double r4222576 = r4222518 ? r4222550 : r4222575;
return r4222576;
}



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 a < -1.2611819773150732e+103 or 1.3923554744466305e+109 < a Initial program 6.7
rmApplied add-cube-cbrt6.7
Applied times-frac4.7
rmApplied add-log-exp15.6
if -1.2611819773150732e+103 < a < 1.3923554744466305e+109Initial program 2.9
rmApplied add-cbrt-cube2.9
Applied add-cbrt-cube5.0
Applied cbrt-unprod5.0
Applied add-cbrt-cube5.0
Applied cbrt-undiv5.1
Simplified5.1
rmApplied frac-times5.1
Applied frac-times5.1
Applied cbrt-div5.1
Applied flip-+5.1
Applied frac-sub5.1
Applied associate-*r/5.2
Applied frac-sub5.7
Simplified3.5
Simplified3.5
Final simplification7.4
herbie shell --seed 2019200
(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)))))))))))