\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 1188863810682620.75:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2}\right)}^{3}} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\frac{4}{\alpha}}{\alpha} - \left(\frac{2}{\alpha} - \frac{-8}{{\alpha}^{3}}\right)\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r445 = beta;
double r446 = alpha;
double r447 = r445 - r446;
double r448 = r446 + r445;
double r449 = 2.0;
double r450 = r448 + r449;
double r451 = r447 / r450;
double r452 = 1.0;
double r453 = r451 + r452;
double r454 = r453 / r449;
return r454;
}
double f(double alpha, double beta) {
double r455 = alpha;
double r456 = 1188863810682620.8;
bool r457 = r455 <= r456;
double r458 = beta;
double r459 = r455 + r458;
double r460 = 2.0;
double r461 = r459 + r460;
double r462 = r458 / r461;
double r463 = 3.0;
double r464 = pow(r462, r463);
double r465 = cbrt(r464);
double r466 = r455 / r461;
double r467 = 1.0;
double r468 = r466 - r467;
double r469 = r465 - r468;
double r470 = r469 / r460;
double r471 = 4.0;
double r472 = r471 / r455;
double r473 = r472 / r455;
double r474 = r460 / r455;
double r475 = 8.0;
double r476 = -r475;
double r477 = pow(r455, r463);
double r478 = r476 / r477;
double r479 = r474 - r478;
double r480 = r473 - r479;
double r481 = r462 - r480;
double r482 = r481 / r460;
double r483 = r457 ? r470 : r482;
return r483;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1188863810682620.8Initial program 0.3
rmApplied div-sub0.3
Applied associate-+l-0.3
rmApplied add-cbrt-cube11.2
Applied add-cbrt-cube13.7
Applied cbrt-undiv13.7
Simplified0.3
if 1188863810682620.8 < alpha Initial program 50.2
rmApplied div-sub50.2
Applied associate-+l-48.7
Taylor expanded around inf 18.3
Simplified18.3
Final simplification6.0
herbie shell --seed 2020025
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:precision binary64
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))