\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 1190096873705876480:\\
\;\;\;\;{e}^{\left(\log \left(\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}{2}\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \left(\left(\frac{4}{{\alpha}^{2}} - \frac{2}{\alpha}\right) - \frac{8}{{\alpha}^{3}}\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r82831 = beta;
double r82832 = alpha;
double r82833 = r82831 - r82832;
double r82834 = r82832 + r82831;
double r82835 = 2.0;
double r82836 = r82834 + r82835;
double r82837 = r82833 / r82836;
double r82838 = 1.0;
double r82839 = r82837 + r82838;
double r82840 = r82839 / r82835;
return r82840;
}
double f(double alpha, double beta) {
double r82841 = alpha;
double r82842 = 1.1900968737058765e+18;
bool r82843 = r82841 <= r82842;
double r82844 = exp(1.0);
double r82845 = beta;
double r82846 = r82841 + r82845;
double r82847 = 2.0;
double r82848 = r82846 + r82847;
double r82849 = r82845 / r82848;
double r82850 = r82841 / r82848;
double r82851 = 1.0;
double r82852 = r82850 - r82851;
double r82853 = r82849 - r82852;
double r82854 = r82853 / r82847;
double r82855 = log(r82854);
double r82856 = pow(r82844, r82855);
double r82857 = cbrt(r82845);
double r82858 = r82857 * r82857;
double r82859 = cbrt(r82848);
double r82860 = r82859 * r82859;
double r82861 = r82858 / r82860;
double r82862 = r82857 / r82859;
double r82863 = r82861 * r82862;
double r82864 = 4.0;
double r82865 = 2.0;
double r82866 = pow(r82841, r82865);
double r82867 = r82864 / r82866;
double r82868 = r82847 / r82841;
double r82869 = r82867 - r82868;
double r82870 = 8.0;
double r82871 = 3.0;
double r82872 = pow(r82841, r82871);
double r82873 = r82870 / r82872;
double r82874 = r82869 - r82873;
double r82875 = r82863 - r82874;
double r82876 = r82875 / r82847;
double r82877 = r82843 ? r82856 : r82876;
return r82877;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.1900968737058765e+18Initial program 0.5
rmApplied div-sub0.5
Applied associate-+l-0.5
rmApplied add-exp-log0.5
Applied add-exp-log0.5
Applied div-exp0.5
Simplified0.5
rmApplied pow10.5
Applied log-pow0.5
Applied exp-prod0.5
Simplified0.5
if 1.1900968737058765e+18 < alpha Initial program 50.4
rmApplied div-sub50.4
Applied associate-+l-48.8
rmApplied add-cube-cbrt48.9
Applied add-cube-cbrt48.8
Applied times-frac48.8
Taylor expanded around inf 18.3
Simplified18.3
Final simplification6.1
herbie shell --seed 2019209 +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))