\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)}}\begin{array}{l}
\mathbf{if}\;t \le -2.730208876097712 \cdot 10^{-45}:\\
\;\;\;\;\frac{x}{e^{\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0} \cdot y + x}\\
\mathbf{elif}\;t \le 1.5942112126605388 \cdot 10^{-155}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{\frac{\left(\left(\left(t \cdot 3.0\right) \cdot \left(a - \frac{5.0}{6.0}\right)\right) \cdot z\right) \cdot \sqrt{t + a} - \left(b - c\right) \cdot \left(t \cdot \left(\left(\frac{5.0}{6.0} + a\right) \cdot \left(\left(t \cdot 3.0\right) \cdot \left(a - \frac{5.0}{6.0}\right)\right) - 2.0 \cdot \left(a - \frac{5.0}{6.0}\right)\right)\right)}{\left(\left(t \cdot 3.0\right) \cdot \left(a - \frac{5.0}{6.0}\right)\right) \cdot t} \cdot 2.0}}\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{e^{\left(\frac{z}{\sqrt[3]{t} \cdot \sqrt[3]{t}} \cdot \frac{\sqrt{t + a}}{\sqrt[3]{t}} - \left(\left(\frac{5.0}{6.0} + a\right) - \frac{2.0}{t \cdot 3.0}\right) \cdot \left(b - c\right)\right) \cdot 2.0} \cdot y + x}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r6690576 = x;
double r6690577 = y;
double r6690578 = 2.0;
double r6690579 = z;
double r6690580 = t;
double r6690581 = a;
double r6690582 = r6690580 + r6690581;
double r6690583 = sqrt(r6690582);
double r6690584 = r6690579 * r6690583;
double r6690585 = r6690584 / r6690580;
double r6690586 = b;
double r6690587 = c;
double r6690588 = r6690586 - r6690587;
double r6690589 = 5.0;
double r6690590 = 6.0;
double r6690591 = r6690589 / r6690590;
double r6690592 = r6690581 + r6690591;
double r6690593 = 3.0;
double r6690594 = r6690580 * r6690593;
double r6690595 = r6690578 / r6690594;
double r6690596 = r6690592 - r6690595;
double r6690597 = r6690588 * r6690596;
double r6690598 = r6690585 - r6690597;
double r6690599 = r6690578 * r6690598;
double r6690600 = exp(r6690599);
double r6690601 = r6690577 * r6690600;
double r6690602 = r6690576 + r6690601;
double r6690603 = r6690576 / r6690602;
return r6690603;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r6690604 = t;
double r6690605 = -2.730208876097712e-45;
bool r6690606 = r6690604 <= r6690605;
double r6690607 = x;
double r6690608 = z;
double r6690609 = cbrt(r6690604);
double r6690610 = r6690609 * r6690609;
double r6690611 = r6690608 / r6690610;
double r6690612 = a;
double r6690613 = r6690604 + r6690612;
double r6690614 = sqrt(r6690613);
double r6690615 = r6690614 / r6690609;
double r6690616 = r6690611 * r6690615;
double r6690617 = 5.0;
double r6690618 = 6.0;
double r6690619 = r6690617 / r6690618;
double r6690620 = r6690619 + r6690612;
double r6690621 = 2.0;
double r6690622 = 3.0;
double r6690623 = r6690604 * r6690622;
double r6690624 = r6690621 / r6690623;
double r6690625 = r6690620 - r6690624;
double r6690626 = b;
double r6690627 = c;
double r6690628 = r6690626 - r6690627;
double r6690629 = r6690625 * r6690628;
double r6690630 = r6690616 - r6690629;
double r6690631 = r6690630 * r6690621;
double r6690632 = exp(r6690631);
double r6690633 = y;
double r6690634 = r6690632 * r6690633;
double r6690635 = r6690634 + r6690607;
double r6690636 = r6690607 / r6690635;
double r6690637 = 1.5942112126605388e-155;
bool r6690638 = r6690604 <= r6690637;
double r6690639 = r6690612 - r6690619;
double r6690640 = r6690623 * r6690639;
double r6690641 = r6690640 * r6690608;
double r6690642 = r6690641 * r6690614;
double r6690643 = r6690620 * r6690640;
double r6690644 = r6690621 * r6690639;
double r6690645 = r6690643 - r6690644;
double r6690646 = r6690604 * r6690645;
double r6690647 = r6690628 * r6690646;
double r6690648 = r6690642 - r6690647;
double r6690649 = r6690640 * r6690604;
double r6690650 = r6690648 / r6690649;
double r6690651 = r6690650 * r6690621;
double r6690652 = exp(r6690651);
double r6690653 = r6690633 * r6690652;
double r6690654 = r6690607 + r6690653;
double r6690655 = r6690607 / r6690654;
double r6690656 = r6690638 ? r6690655 : r6690636;
double r6690657 = r6690606 ? r6690636 : r6690656;
return r6690657;
}



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 < -2.730208876097712e-45 or 1.5942112126605388e-155 < t Initial program 2.7
rmApplied add-cube-cbrt2.7
Applied times-frac0.9
if -2.730208876097712e-45 < t < 1.5942112126605388e-155Initial program 6.8
rmApplied flip-+10.3
Applied frac-sub10.3
Applied associate-*r/10.4
Applied frac-sub7.7
Simplified3.5
Final simplification1.7
herbie shell --seed 2019149
(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)))))))))))