\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 1.0333984294579716 \cdot 10^{-111}:\\
\;\;\;\;\frac{x}{x + e^{\left(\frac{\left(\left(\sqrt{t + a} \cdot z\right)\right)}{t} - \left(\left(a + \frac{5.0}{6.0}\right) - \frac{2.0}{3.0 \cdot t}\right) \cdot \left(b - c\right)\right) \cdot 2.0} \cdot y}\\
\mathbf{else}:\\
\;\;\;\;\frac{x}{x + y \cdot e^{2.0 \cdot \log \left(e^{\sqrt{t + a} \cdot \frac{z}{t} - \left(\frac{5.0}{6.0} + \left(a - \left(\left(\frac{\frac{2.0}{t}}{3.0}\right)\right)\right)\right) \cdot \left(b - c\right)}\right)}}\\
\end{array}double f(double x, double y, double z, double t, double a, double b, double c) {
double r3481287 = x;
double r3481288 = y;
double r3481289 = 2.0;
double r3481290 = z;
double r3481291 = t;
double r3481292 = a;
double r3481293 = r3481291 + r3481292;
double r3481294 = sqrt(r3481293);
double r3481295 = r3481290 * r3481294;
double r3481296 = r3481295 / r3481291;
double r3481297 = b;
double r3481298 = c;
double r3481299 = r3481297 - r3481298;
double r3481300 = 5.0;
double r3481301 = 6.0;
double r3481302 = r3481300 / r3481301;
double r3481303 = r3481292 + r3481302;
double r3481304 = 3.0;
double r3481305 = r3481291 * r3481304;
double r3481306 = r3481289 / r3481305;
double r3481307 = r3481303 - r3481306;
double r3481308 = r3481299 * r3481307;
double r3481309 = r3481296 - r3481308;
double r3481310 = r3481289 * r3481309;
double r3481311 = exp(r3481310);
double r3481312 = r3481288 * r3481311;
double r3481313 = r3481287 + r3481312;
double r3481314 = r3481287 / r3481313;
return r3481314;
}
double f(double x, double y, double z, double t, double a, double b, double c) {
double r3481315 = t;
double r3481316 = 1.0333984294579716e-111;
bool r3481317 = r3481315 <= r3481316;
double r3481318 = x;
double r3481319 = a;
double r3481320 = r3481315 + r3481319;
double r3481321 = sqrt(r3481320);
double r3481322 = z;
double r3481323 = r3481321 * r3481322;
double r3481324 = /* ERROR: no posit support in C */;
double r3481325 = /* ERROR: no posit support in C */;
double r3481326 = r3481325 / r3481315;
double r3481327 = 5.0;
double r3481328 = 6.0;
double r3481329 = r3481327 / r3481328;
double r3481330 = r3481319 + r3481329;
double r3481331 = 2.0;
double r3481332 = 3.0;
double r3481333 = r3481332 * r3481315;
double r3481334 = r3481331 / r3481333;
double r3481335 = r3481330 - r3481334;
double r3481336 = b;
double r3481337 = c;
double r3481338 = r3481336 - r3481337;
double r3481339 = r3481335 * r3481338;
double r3481340 = r3481326 - r3481339;
double r3481341 = r3481340 * r3481331;
double r3481342 = exp(r3481341);
double r3481343 = y;
double r3481344 = r3481342 * r3481343;
double r3481345 = r3481318 + r3481344;
double r3481346 = r3481318 / r3481345;
double r3481347 = r3481322 / r3481315;
double r3481348 = r3481321 * r3481347;
double r3481349 = r3481331 / r3481315;
double r3481350 = r3481349 / r3481332;
double r3481351 = /* ERROR: no posit support in C */;
double r3481352 = /* ERROR: no posit support in C */;
double r3481353 = r3481319 - r3481352;
double r3481354 = r3481329 + r3481353;
double r3481355 = r3481354 * r3481338;
double r3481356 = r3481348 - r3481355;
double r3481357 = exp(r3481356);
double r3481358 = log(r3481357);
double r3481359 = r3481331 * r3481358;
double r3481360 = exp(r3481359);
double r3481361 = r3481343 * r3481360;
double r3481362 = r3481318 + r3481361;
double r3481363 = r3481318 / r3481362;
double r3481364 = r3481317 ? r3481346 : r3481363;
return r3481364;
}



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
if t < 1.0333984294579716e-111Initial program 5.8
rmApplied insert-posit168.1
if 1.0333984294579716e-111 < t Initial program 2.4
rmApplied add-log-exp5.7
Applied add-log-exp11.9
Applied diff-log11.9
Simplified0.5
rmApplied insert-posit161.2
Final simplification4.2
herbie shell --seed 2019139
(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)))))))))))