\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 -2.097264455817546718684511622823663412103 \cdot 10^{-14}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2 \cdot \left(\frac{z}{\sqrt[3]{t} \cdot \log \left(e^{\sqrt[3]{t}}\right)} \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{elif}\;t \le 1.207880239692675796069901468393483526346 \cdot 10^{-104}:\\
\;\;\;\;\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 \cdot \sqrt{t + a}}{t} - \left(b - c\right) \cdot \left(\left(a + \frac{5}{6}\right) - {\left({\left(\frac{2}{t \cdot 3}\right)}^{3}\right)}^{\frac{1}{3}}\right)\right)}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r75094 = x;
double r75095 = y;
double r75096 = 2.0;
double r75097 = z;
double r75098 = t;
double r75099 = a;
double r75100 = r75098 + r75099;
double r75101 = sqrt(r75100);
double r75102 = r75097 * r75101;
double r75103 = r75102 / r75098;
double r75104 = b;
double r75105 = c;
double r75106 = r75104 - r75105;
double r75107 = 5.0;
double r75108 = 6.0;
double r75109 = r75107 / r75108;
double r75110 = r75099 + r75109;
double r75111 = 3.0;
double r75112 = r75098 * r75111;
double r75113 = r75096 / r75112;
double r75114 = r75110 - r75113;
double r75115 = r75106 * r75114;
double r75116 = r75103 - r75115;
double r75117 = r75096 * r75116;
double r75118 = exp(r75117);
double r75119 = r75095 * r75118;
double r75120 = r75094 + r75119;
double r75121 = r75094 / r75120;
return r75121;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r75122 = t;
double r75123 = -2.0972644558175467e-14;
bool r75124 = r75122 <= r75123;
double r75125 = x;
double r75126 = y;
double r75127 = 2.0;
double r75128 = z;
double r75129 = cbrt(r75122);
double r75130 = exp(r75129);
double r75131 = log(r75130);
double r75132 = r75129 * r75131;
double r75133 = r75128 / r75132;
double r75134 = a;
double r75135 = r75122 + r75134;
double r75136 = sqrt(r75135);
double r75137 = r75136 / r75129;
double r75138 = r75133 * r75137;
double r75139 = b;
double r75140 = c;
double r75141 = r75139 - r75140;
double r75142 = 5.0;
double r75143 = 6.0;
double r75144 = r75142 / r75143;
double r75145 = r75134 + r75144;
double r75146 = 3.0;
double r75147 = r75122 * r75146;
double r75148 = r75127 / r75147;
double r75149 = r75145 - r75148;
double r75150 = r75141 * r75149;
double r75151 = r75138 - r75150;
double r75152 = r75127 * r75151;
double r75153 = exp(r75152);
double r75154 = r75126 * r75153;
double r75155 = r75125 + r75154;
double r75156 = r75125 / r75155;
double r75157 = 1.2078802396926758e-104;
bool r75158 = r75122 <= r75157;
double r75159 = r75128 * r75137;
double r75160 = r75134 - r75144;
double r75161 = r75160 * r75147;
double r75162 = r75159 * r75161;
double r75163 = r75129 * r75129;
double r75164 = r75134 * r75134;
double r75165 = r75144 * r75144;
double r75166 = r75164 - r75165;
double r75167 = r75166 * r75147;
double r75168 = r75160 * r75127;
double r75169 = r75167 - r75168;
double r75170 = r75141 * r75169;
double r75171 = r75163 * r75170;
double r75172 = r75162 - r75171;
double r75173 = r75163 * r75161;
double r75174 = r75172 / r75173;
double r75175 = r75127 * r75174;
double r75176 = exp(r75175);
double r75177 = r75126 * r75176;
double r75178 = r75125 + r75177;
double r75179 = r75125 / r75178;
double r75180 = r75128 * r75136;
double r75181 = r75180 / r75122;
double r75182 = 3.0;
double r75183 = pow(r75148, r75182);
double r75184 = 0.3333333333333333;
double r75185 = pow(r75183, r75184);
double r75186 = r75145 - r75185;
double r75187 = r75141 * r75186;
double r75188 = r75181 - r75187;
double r75189 = r75127 * r75188;
double r75190 = exp(r75189);
double r75191 = r75126 * r75190;
double r75192 = r75125 + r75191;
double r75193 = r75125 / r75192;
double r75194 = r75158 ? r75179 : r75193;
double r75195 = r75124 ? r75156 : r75194;
return r75195;
}



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.0972644558175467e-14Initial program 4.1
rmApplied add-cube-cbrt4.1
Applied times-frac0.6
rmApplied add-log-exp3.9
if -2.0972644558175467e-14 < t < 1.2078802396926758e-104Initial program 6.5
rmApplied add-cube-cbrt6.5
Applied times-frac6.7
rmApplied flip-+10.0
Applied frac-sub10.1
Applied associate-*r/10.1
Applied associate-*l/9.9
Applied frac-sub7.0
if 1.2078802396926758e-104 < t Initial program 2.3
rmApplied add-cbrt-cube2.3
Applied add-cbrt-cube2.3
Applied cbrt-unprod2.3
Applied add-cbrt-cube2.3
Applied cbrt-undiv2.3
Simplified2.3
rmApplied pow1/32.3
Final simplification4.1
herbie shell --seed 2019353
(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)))))))))))