\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 1.30567877700455932 \cdot 10^{40}:\\
\;\;\;\;\frac{\log \left(e^{\sqrt[3]{{\left(\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}}\right)}^{6}}}\right) \cdot \sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\frac{4}{\alpha \cdot \alpha} - \frac{2}{\alpha}\right) - \frac{8}{{\alpha}^{3}}\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r146354 = beta;
double r146355 = alpha;
double r146356 = r146354 - r146355;
double r146357 = r146355 + r146354;
double r146358 = 2.0;
double r146359 = r146357 + r146358;
double r146360 = r146356 / r146359;
double r146361 = 1.0;
double r146362 = r146360 + r146361;
double r146363 = r146362 / r146358;
return r146363;
}
double f(double alpha, double beta) {
double r146364 = alpha;
double r146365 = 1.3056787770045593e+40;
bool r146366 = r146364 <= r146365;
double r146367 = beta;
double r146368 = r146364 + r146367;
double r146369 = 2.0;
double r146370 = r146368 + r146369;
double r146371 = r146367 / r146370;
double r146372 = cbrt(r146371);
double r146373 = 6.0;
double r146374 = pow(r146372, r146373);
double r146375 = cbrt(r146374);
double r146376 = exp(r146375);
double r146377 = log(r146376);
double r146378 = r146377 * r146372;
double r146379 = r146364 / r146370;
double r146380 = 1.0;
double r146381 = r146379 - r146380;
double r146382 = r146378 - r146381;
double r146383 = r146382 / r146369;
double r146384 = 4.0;
double r146385 = r146364 * r146364;
double r146386 = r146384 / r146385;
double r146387 = r146369 / r146364;
double r146388 = r146386 - r146387;
double r146389 = 8.0;
double r146390 = 3.0;
double r146391 = pow(r146364, r146390);
double r146392 = r146389 / r146391;
double r146393 = r146388 - r146392;
double r146394 = r146371 - r146393;
double r146395 = r146394 / r146369;
double r146396 = r146366 ? r146383 : r146395;
return r146396;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.3056787770045593e+40Initial program 1.9
rmApplied div-sub1.9
Applied associate-+l-1.9
rmApplied add-cube-cbrt1.9
rmApplied pow1/321.7
Applied pow1/321.7
Applied pow-prod-down1.9
Simplified1.9
rmApplied add-log-exp1.9
Simplified1.9
if 1.3056787770045593e+40 < alpha Initial program 51.1
rmApplied div-sub51.1
Applied associate-+l-49.5
Taylor expanded around inf 17.5
Simplified17.5
Final simplification6.4
herbie shell --seed 2020042
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:precision binary64
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))