\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 6665734284871154:\\
\;\;\;\;\frac{e^{\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)}}{2}\\
\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}} - \mathsf{fma}\left(\frac{1}{\alpha}, \frac{4}{\alpha} - 2, \frac{-7.999999999999999111821580299874767661095}{{\alpha}^{3}}\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r161599 = beta;
double r161600 = alpha;
double r161601 = r161599 - r161600;
double r161602 = r161600 + r161599;
double r161603 = 2.0;
double r161604 = r161602 + r161603;
double r161605 = r161601 / r161604;
double r161606 = 1.0;
double r161607 = r161605 + r161606;
double r161608 = r161607 / r161603;
return r161608;
}
double f(double alpha, double beta) {
double r161609 = alpha;
double r161610 = 6665734284871154.0;
bool r161611 = r161609 <= r161610;
double r161612 = beta;
double r161613 = r161609 + r161612;
double r161614 = 2.0;
double r161615 = r161613 + r161614;
double r161616 = r161612 / r161615;
double r161617 = r161609 / r161615;
double r161618 = 1.0;
double r161619 = r161617 - r161618;
double r161620 = r161616 - r161619;
double r161621 = log(r161620);
double r161622 = exp(r161621);
double r161623 = r161622 / r161614;
double r161624 = cbrt(r161612);
double r161625 = r161624 * r161624;
double r161626 = cbrt(r161615);
double r161627 = r161626 * r161626;
double r161628 = r161625 / r161627;
double r161629 = r161624 / r161626;
double r161630 = r161628 * r161629;
double r161631 = 1.0;
double r161632 = r161631 / r161609;
double r161633 = 4.0;
double r161634 = r161633 / r161609;
double r161635 = r161634 - r161614;
double r161636 = 7.999999999999999;
double r161637 = -r161636;
double r161638 = 3.0;
double r161639 = pow(r161609, r161638);
double r161640 = r161637 / r161639;
double r161641 = fma(r161632, r161635, r161640);
double r161642 = r161630 - r161641;
double r161643 = r161642 / r161614;
double r161644 = r161611 ? r161623 : r161643;
return r161644;
}



Bits error versus alpha



Bits error versus beta
if alpha < 6665734284871154.0Initial program 0.4
rmApplied div-sub0.4
Applied associate-+l-0.4
rmApplied add-exp-log0.4
if 6665734284871154.0 < alpha Initial program 50.8
rmApplied div-sub50.7
Applied associate-+l-49.1
rmApplied add-cube-cbrt49.2
Applied add-cube-cbrt49.1
Applied times-frac49.1
rmApplied add-cube-cbrt50.9
Applied add-cube-cbrt49.2
Applied times-frac49.2
Applied fma-neg49.2
Taylor expanded around inf 18.2
Simplified18.2
Final simplification6.0
herbie shell --seed 2019353 +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))