\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 5062494549189153:\\
\;\;\;\;e^{\left(-\log \left(\sqrt{2}\right)\right) + \log \left(\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{\sqrt{2}}\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{4}{\alpha \cdot \alpha} - \left(\frac{2}{\alpha} + \frac{8}{{\alpha}^{3}}\right)\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r67731 = beta;
double r67732 = alpha;
double r67733 = r67731 - r67732;
double r67734 = r67732 + r67731;
double r67735 = 2.0;
double r67736 = r67734 + r67735;
double r67737 = r67733 / r67736;
double r67738 = 1.0;
double r67739 = r67737 + r67738;
double r67740 = r67739 / r67735;
return r67740;
}
double f(double alpha, double beta) {
double r67741 = alpha;
double r67742 = 5062494549189153.0;
bool r67743 = r67741 <= r67742;
double r67744 = 2.0;
double r67745 = sqrt(r67744);
double r67746 = log(r67745);
double r67747 = -r67746;
double r67748 = beta;
double r67749 = r67741 + r67748;
double r67750 = r67749 + r67744;
double r67751 = r67748 / r67750;
double r67752 = r67741 / r67750;
double r67753 = 1.0;
double r67754 = r67752 - r67753;
double r67755 = r67751 - r67754;
double r67756 = r67755 / r67745;
double r67757 = log(r67756);
double r67758 = r67747 + r67757;
double r67759 = exp(r67758);
double r67760 = 4.0;
double r67761 = r67741 * r67741;
double r67762 = r67760 / r67761;
double r67763 = r67744 / r67741;
double r67764 = 8.0;
double r67765 = 3.0;
double r67766 = pow(r67741, r67765);
double r67767 = r67764 / r67766;
double r67768 = r67763 + r67767;
double r67769 = r67762 - r67768;
double r67770 = r67751 - r67769;
double r67771 = r67770 / r67744;
double r67772 = r67743 ? r67759 : r67771;
return r67772;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 5062494549189153.0Initial program 0.4
rmApplied div-sub0.4
Applied associate-+l-0.4
rmApplied add-exp-log0.4
Applied add-exp-log0.4
Applied div-exp0.4
Simplified0.4
rmApplied add-sqr-sqrt1.9
Applied *-un-lft-identity1.9
Applied times-frac1.9
Applied log-prod1.7
Simplified1.4
if 5062494549189153.0 < alpha Initial program 50.4
rmApplied div-sub50.4
Applied associate-+l-48.7
Taylor expanded around inf 18.4
Simplified18.4
Final simplification6.8
herbie shell --seed 2019303 +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))