\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 -3.449348190439558691528363367058267716579 \cdot 10^{-112}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\left(a \cdot c + 0.8333333333333333703407674875052180141211 \cdot c\right) - a \cdot b\right)}}\\
\mathbf{elif}\;t \le 4.306601193878862653826150935677245575468 \cdot 10^{-301}:\\
\;\;\;\;\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 \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)}}}\\
\mathbf{else}:\\
\;\;\;\;\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)}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r85079 = x;
double r85080 = y;
double r85081 = 2.0;
double r85082 = z;
double r85083 = t;
double r85084 = a;
double r85085 = r85083 + r85084;
double r85086 = sqrt(r85085);
double r85087 = r85082 * r85086;
double r85088 = r85087 / r85083;
double r85089 = b;
double r85090 = c;
double r85091 = r85089 - r85090;
double r85092 = 5.0;
double r85093 = 6.0;
double r85094 = r85092 / r85093;
double r85095 = r85084 + r85094;
double r85096 = 3.0;
double r85097 = r85083 * r85096;
double r85098 = r85081 / r85097;
double r85099 = r85095 - r85098;
double r85100 = r85091 * r85099;
double r85101 = r85088 - r85100;
double r85102 = r85081 * r85101;
double r85103 = exp(r85102);
double r85104 = r85080 * r85103;
double r85105 = r85079 + r85104;
double r85106 = r85079 / r85105;
return r85106;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r85107 = t;
double r85108 = -3.4493481904395587e-112;
bool r85109 = r85107 <= r85108;
double r85110 = x;
double r85111 = y;
double r85112 = 2.0;
double r85113 = a;
double r85114 = c;
double r85115 = r85113 * r85114;
double r85116 = 0.8333333333333334;
double r85117 = r85116 * r85114;
double r85118 = r85115 + r85117;
double r85119 = b;
double r85120 = r85113 * r85119;
double r85121 = r85118 - r85120;
double r85122 = r85112 * r85121;
double r85123 = exp(r85122);
double r85124 = r85111 * r85123;
double r85125 = r85110 + r85124;
double r85126 = r85110 / r85125;
double r85127 = 4.306601193878863e-301;
bool r85128 = r85107 <= r85127;
double r85129 = z;
double r85130 = r85107 + r85113;
double r85131 = sqrt(r85130);
double r85132 = cbrt(r85107);
double r85133 = r85131 / r85132;
double r85134 = r85129 * r85133;
double r85135 = 5.0;
double r85136 = 6.0;
double r85137 = r85135 / r85136;
double r85138 = r85113 - r85137;
double r85139 = 3.0;
double r85140 = r85107 * r85139;
double r85141 = r85138 * r85140;
double r85142 = r85134 * r85141;
double r85143 = r85132 * r85132;
double r85144 = r85119 - r85114;
double r85145 = r85113 * r85113;
double r85146 = r85137 * r85137;
double r85147 = r85145 - r85146;
double r85148 = r85147 * r85140;
double r85149 = r85138 * r85112;
double r85150 = r85148 - r85149;
double r85151 = r85144 * r85150;
double r85152 = r85143 * r85151;
double r85153 = r85142 - r85152;
double r85154 = r85143 * r85141;
double r85155 = r85153 / r85154;
double r85156 = r85112 * r85155;
double r85157 = exp(r85156);
double r85158 = r85111 * r85157;
double r85159 = r85110 + r85158;
double r85160 = r85110 / r85159;
double r85161 = r85129 / r85143;
double r85162 = r85161 * r85133;
double r85163 = r85113 + r85137;
double r85164 = r85112 / r85140;
double r85165 = r85163 - r85164;
double r85166 = r85144 * r85165;
double r85167 = r85162 - r85166;
double r85168 = r85112 * r85167;
double r85169 = exp(r85168);
double r85170 = r85111 * r85169;
double r85171 = r85110 + r85170;
double r85172 = r85110 / r85171;
double r85173 = r85128 ? r85160 : r85172;
double r85174 = r85109 ? r85126 : r85173;
return r85174;
}



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 < -3.4493481904395587e-112Initial program 3.0
Taylor expanded around inf 8.5
if -3.4493481904395587e-112 < t < 4.306601193878863e-301Initial program 7.5
rmApplied add-cube-cbrt7.5
Applied times-frac7.5
rmApplied flip-+9.5
Applied frac-sub9.5
Applied associate-*r/9.6
Applied associate-*l/9.5
Applied frac-sub5.0
if 4.306601193878863e-301 < t Initial program 3.5
rmApplied add-cube-cbrt3.5
Applied times-frac2.0
Final simplification3.1
herbie shell --seed 2019344
(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)))))))))))