\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 7863989155318432839393331734927900672:\\
\;\;\;\;\frac{{e}^{\left(\log \left(\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1\right)\right)\right)}}{{e}^{\left(\log 2\right)}}\\
\mathbf{elif}\;\alpha \le 1.526450071771057118621392850450502817566 \cdot 10^{113}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{4}{\alpha \cdot \alpha} - \left(\frac{\frac{8}{\alpha}}{\alpha \cdot \alpha} + \frac{2}{\alpha}\right)\right)}{2}\\
\mathbf{elif}\;\alpha \le 5.536806714946031575190662455815918850526 \cdot 10^{166}:\\
\;\;\;\;{e}^{\left(\sqrt[3]{\log \left(\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1\right)}{2}\right)} \cdot \left(\sqrt[3]{\log \left(\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1\right)}{2}\right)} \cdot \sqrt[3]{\log \left(\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{\alpha}{\left(\beta + \alpha\right) + 2} - 1\right)}{2}\right)}\right)\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{\left(\beta + \alpha\right) + 2} - \left(\frac{4}{\alpha \cdot \alpha} - \left(\frac{\frac{8}{\alpha}}{\alpha \cdot \alpha} + \frac{2}{\alpha}\right)\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r3925635 = beta;
double r3925636 = alpha;
double r3925637 = r3925635 - r3925636;
double r3925638 = r3925636 + r3925635;
double r3925639 = 2.0;
double r3925640 = r3925638 + r3925639;
double r3925641 = r3925637 / r3925640;
double r3925642 = 1.0;
double r3925643 = r3925641 + r3925642;
double r3925644 = r3925643 / r3925639;
return r3925644;
}
double f(double alpha, double beta) {
double r3925645 = alpha;
double r3925646 = 7.863989155318433e+36;
bool r3925647 = r3925645 <= r3925646;
double r3925648 = exp(1.0);
double r3925649 = beta;
double r3925650 = r3925649 + r3925645;
double r3925651 = 2.0;
double r3925652 = r3925650 + r3925651;
double r3925653 = r3925649 / r3925652;
double r3925654 = r3925645 / r3925652;
double r3925655 = 1.0;
double r3925656 = r3925654 - r3925655;
double r3925657 = r3925653 - r3925656;
double r3925658 = log(r3925657);
double r3925659 = pow(r3925648, r3925658);
double r3925660 = log(r3925651);
double r3925661 = pow(r3925648, r3925660);
double r3925662 = r3925659 / r3925661;
double r3925663 = 1.5264500717710571e+113;
bool r3925664 = r3925645 <= r3925663;
double r3925665 = 4.0;
double r3925666 = r3925645 * r3925645;
double r3925667 = r3925665 / r3925666;
double r3925668 = 8.0;
double r3925669 = r3925668 / r3925645;
double r3925670 = r3925669 / r3925666;
double r3925671 = r3925651 / r3925645;
double r3925672 = r3925670 + r3925671;
double r3925673 = r3925667 - r3925672;
double r3925674 = r3925653 - r3925673;
double r3925675 = r3925674 / r3925651;
double r3925676 = 5.5368067149460316e+166;
bool r3925677 = r3925645 <= r3925676;
double r3925678 = r3925657 / r3925651;
double r3925679 = log(r3925678);
double r3925680 = cbrt(r3925679);
double r3925681 = r3925680 * r3925680;
double r3925682 = r3925680 * r3925681;
double r3925683 = pow(r3925648, r3925682);
double r3925684 = r3925677 ? r3925683 : r3925675;
double r3925685 = r3925664 ? r3925675 : r3925684;
double r3925686 = r3925647 ? r3925662 : r3925685;
return r3925686;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 7.863989155318433e+36Initial program 1.6
rmApplied div-sub1.6
Applied associate-+l-1.6
rmApplied add-exp-log1.6
Applied add-exp-log1.6
Applied div-exp1.7
Simplified1.6
rmApplied pow11.6
Applied log-pow1.6
Applied exp-prod1.7
Simplified1.7
rmApplied log-div1.7
Applied pow-sub2.3
if 7.863989155318433e+36 < alpha < 1.5264500717710571e+113 or 5.5368067149460316e+166 < alpha Initial program 51.0
rmApplied div-sub51.0
Applied associate-+l-49.3
Taylor expanded around inf 18.7
Simplified18.7
if 1.5264500717710571e+113 < alpha < 5.5368067149460316e+166Initial program 49.8
rmApplied div-sub49.8
Applied associate-+l-48.6
rmApplied add-exp-log48.6
Applied add-exp-log49.2
Applied div-exp49.2
Simplified49.2
rmApplied pow149.2
Applied log-pow49.2
Applied exp-prod49.2
Simplified49.2
rmApplied add-cube-cbrt49.2
Final simplification8.9
herbie shell --seed 2019200 +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))