\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 14037838382120007700:\\
\;\;\;\;\frac{\left(\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}} \cdot \left(\log \left(\sqrt{e^{\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}}}}\right) + \log \left(\sqrt{e^{\sqrt[3]{\frac{\beta}{\left(\alpha + \beta\right) + 2}}}}\right)\right)\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 r85634 = beta;
double r85635 = alpha;
double r85636 = r85634 - r85635;
double r85637 = r85635 + r85634;
double r85638 = 2.0;
double r85639 = r85637 + r85638;
double r85640 = r85636 / r85639;
double r85641 = 1.0;
double r85642 = r85640 + r85641;
double r85643 = r85642 / r85638;
return r85643;
}
double f(double alpha, double beta) {
double r85644 = alpha;
double r85645 = 1.4037838382120008e+19;
bool r85646 = r85644 <= r85645;
double r85647 = beta;
double r85648 = r85644 + r85647;
double r85649 = 2.0;
double r85650 = r85648 + r85649;
double r85651 = r85647 / r85650;
double r85652 = cbrt(r85651);
double r85653 = exp(r85652);
double r85654 = sqrt(r85653);
double r85655 = log(r85654);
double r85656 = r85655 + r85655;
double r85657 = r85652 * r85656;
double r85658 = r85657 * r85652;
double r85659 = r85644 / r85650;
double r85660 = 1.0;
double r85661 = r85659 - r85660;
double r85662 = r85658 - r85661;
double r85663 = r85662 / r85649;
double r85664 = 4.0;
double r85665 = r85644 * r85644;
double r85666 = r85664 / r85665;
double r85667 = r85649 / r85644;
double r85668 = r85666 - r85667;
double r85669 = 8.0;
double r85670 = 3.0;
double r85671 = pow(r85644, r85670);
double r85672 = r85669 / r85671;
double r85673 = r85668 - r85672;
double r85674 = r85651 - r85673;
double r85675 = r85674 / r85649;
double r85676 = r85646 ? r85663 : r85675;
return r85676;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.4037838382120008e+19Initial program 0.6
rmApplied div-sub0.6
Applied associate-+l-0.6
rmApplied add-cube-cbrt0.6
rmApplied add-log-exp0.6
rmApplied add-sqr-sqrt0.6
Applied log-prod0.6
if 1.4037838382120008e+19 < alpha Initial program 50.6
rmApplied div-sub50.6
Applied associate-+l-49.1
Taylor expanded around inf 17.9
Simplified17.9
Final simplification6.1
herbie shell --seed 2019195 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:pre (and (> alpha -1.0) (> beta -1.0))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))