\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 r136737 = beta;
double r136738 = alpha;
double r136739 = r136737 - r136738;
double r136740 = r136738 + r136737;
double r136741 = 2.0;
double r136742 = r136740 + r136741;
double r136743 = r136739 / r136742;
double r136744 = 1.0;
double r136745 = r136743 + r136744;
double r136746 = r136745 / r136741;
return r136746;
}
double f(double alpha, double beta) {
double r136747 = alpha;
double r136748 = 1.3056787770045593e+40;
bool r136749 = r136747 <= r136748;
double r136750 = beta;
double r136751 = r136747 + r136750;
double r136752 = 2.0;
double r136753 = r136751 + r136752;
double r136754 = r136750 / r136753;
double r136755 = cbrt(r136754);
double r136756 = 6.0;
double r136757 = pow(r136755, r136756);
double r136758 = cbrt(r136757);
double r136759 = exp(r136758);
double r136760 = log(r136759);
double r136761 = r136760 * r136755;
double r136762 = r136747 / r136753;
double r136763 = 1.0;
double r136764 = r136762 - r136763;
double r136765 = r136761 - r136764;
double r136766 = r136765 / r136752;
double r136767 = 4.0;
double r136768 = r136747 * r136747;
double r136769 = r136767 / r136768;
double r136770 = r136752 / r136747;
double r136771 = r136769 - r136770;
double r136772 = 8.0;
double r136773 = 3.0;
double r136774 = pow(r136747, r136773);
double r136775 = r136772 / r136774;
double r136776 = r136771 - r136775;
double r136777 = r136754 - r136776;
double r136778 = r136777 / r136752;
double r136779 = r136749 ? r136766 : r136778;
return r136779;
}



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))