\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 3.688868362783364965833607415374523233861 \cdot 10^{118}:\\
\;\;\;\;\frac{\left(\alpha + \beta\right) \cdot \frac{\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}} + 1}{2}\\
\mathbf{elif}\;\alpha \le 1.073214391165226003985111564680574143921 \cdot 10^{199}:\\
\;\;\;\;\frac{\frac{2}{\alpha} + \left(\frac{8}{{\alpha}^{3}} - \frac{4}{\alpha \cdot \alpha}\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\left(\alpha + \beta\right) \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1\right)}^{3}}}{2}\\
\end{array}double f(double alpha, double beta, double i) {
double r111363 = alpha;
double r111364 = beta;
double r111365 = r111363 + r111364;
double r111366 = r111364 - r111363;
double r111367 = r111365 * r111366;
double r111368 = 2.0;
double r111369 = i;
double r111370 = r111368 * r111369;
double r111371 = r111365 + r111370;
double r111372 = r111367 / r111371;
double r111373 = r111371 + r111368;
double r111374 = r111372 / r111373;
double r111375 = 1.0;
double r111376 = r111374 + r111375;
double r111377 = r111376 / r111368;
return r111377;
}
double f(double alpha, double beta, double i) {
double r111378 = alpha;
double r111379 = 3.688868362783365e+118;
bool r111380 = r111378 <= r111379;
double r111381 = beta;
double r111382 = r111378 + r111381;
double r111383 = r111381 - r111378;
double r111384 = 2.0;
double r111385 = i;
double r111386 = r111384 * r111385;
double r111387 = r111382 + r111386;
double r111388 = r111383 / r111387;
double r111389 = r111387 + r111384;
double r111390 = sqrt(r111389);
double r111391 = r111388 / r111390;
double r111392 = r111391 / r111390;
double r111393 = r111382 * r111392;
double r111394 = 1.0;
double r111395 = r111393 + r111394;
double r111396 = r111395 / r111384;
double r111397 = 1.073214391165226e+199;
bool r111398 = r111378 <= r111397;
double r111399 = r111384 / r111378;
double r111400 = 8.0;
double r111401 = 3.0;
double r111402 = pow(r111378, r111401);
double r111403 = r111400 / r111402;
double r111404 = 4.0;
double r111405 = r111378 * r111378;
double r111406 = r111404 / r111405;
double r111407 = r111403 - r111406;
double r111408 = r111399 + r111407;
double r111409 = r111408 / r111384;
double r111410 = r111388 / r111389;
double r111411 = r111382 * r111410;
double r111412 = r111411 + r111394;
double r111413 = pow(r111412, r111401);
double r111414 = cbrt(r111413);
double r111415 = r111414 / r111384;
double r111416 = r111398 ? r111409 : r111415;
double r111417 = r111380 ? r111396 : r111416;
return r111417;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 3.688868362783365e+118Initial program 14.5
rmApplied *-un-lft-identity14.5
Applied *-un-lft-identity14.5
Applied times-frac4.0
Applied times-frac4.0
Simplified4.0
rmApplied add-sqr-sqrt4.1
Applied associate-/r*4.0
if 3.688868362783365e+118 < alpha < 1.073214391165226e+199Initial program 56.3
rmApplied *-un-lft-identity56.3
Applied *-un-lft-identity56.3
Applied times-frac38.3
Applied times-frac38.2
Simplified38.2
Taylor expanded around inf 40.3
Simplified40.3
if 1.073214391165226e+199 < alpha Initial program 64.0
rmApplied *-un-lft-identity64.0
Applied *-un-lft-identity64.0
Applied times-frac50.6
Applied times-frac50.7
Simplified50.7
rmApplied add-cbrt-cube50.7
Simplified50.7
Final simplification12.8
herbie shell --seed 2019325
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:precision binary64
:pre (and (> alpha -1) (> beta -1) (> i 0.0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2)) 1) 2))