\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 25713141841.6247902:\\
\;\;\;\;\frac{\left(\left(\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}} \cdot \sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}}\right) \cdot \log \left(e^{\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}}}\right) - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right) + \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) \cdot \left(\left(-1\right) + 1\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r103468 = beta;
double r103469 = alpha;
double r103470 = r103468 - r103469;
double r103471 = r103469 + r103468;
double r103472 = 2.0;
double r103473 = r103471 + r103472;
double r103474 = r103470 / r103473;
double r103475 = 1.0;
double r103476 = r103474 + r103475;
double r103477 = r103476 / r103472;
return r103477;
}
double f(double alpha, double beta) {
double r103478 = alpha;
double r103479 = 25713141841.62479;
bool r103480 = r103478 <= r103479;
double r103481 = beta;
double r103482 = r103478 + r103481;
double r103483 = 2.0;
double r103484 = r103482 + r103483;
double r103485 = r103481 / r103484;
double r103486 = cbrt(r103485);
double r103487 = r103486 * r103486;
double r103488 = exp(r103486);
double r103489 = log(r103488);
double r103490 = r103487 * r103489;
double r103491 = r103478 / r103484;
double r103492 = 1.0;
double r103493 = r103491 - r103492;
double r103494 = r103490 - r103493;
double r103495 = 1.0;
double r103496 = -r103495;
double r103497 = r103496 + r103495;
double r103498 = r103493 * r103497;
double r103499 = r103494 + r103498;
double r103500 = r103499 / r103483;
double r103501 = 4.0;
double r103502 = 2.0;
double r103503 = pow(r103478, r103502);
double r103504 = r103495 / r103503;
double r103505 = r103495 / r103478;
double r103506 = 8.0;
double r103507 = 3.0;
double r103508 = pow(r103478, r103507);
double r103509 = r103495 / r103508;
double r103510 = r103506 * r103509;
double r103511 = fma(r103483, r103505, r103510);
double r103512 = -r103511;
double r103513 = fma(r103501, r103504, r103512);
double r103514 = r103485 - r103513;
double r103515 = r103514 / r103483;
double r103516 = r103480 ? r103500 : r103515;
return r103516;
}



Bits error versus alpha



Bits error versus beta
if alpha < 25713141841.62479Initial program 0.2
rmApplied div-sub0.2
Applied associate-+l-0.2
rmApplied add-cube-cbrt0.2
Applied add-cube-cbrt0.2
Applied prod-diff0.2
Simplified0.2
Simplified0.2
rmApplied add-log-exp0.2
if 25713141841.62479 < alpha Initial program 49.7
rmApplied div-sub49.7
Applied associate-+l-48.1
Taylor expanded around inf 18.3
Simplified18.3
Final simplification6.0
herbie shell --seed 2020027 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:precision binary64
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))