\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} \le -0.9999999551912412:\\
\;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2.0} - \left(\frac{4.0}{\alpha \cdot \alpha} - \left(\frac{2.0}{\alpha} + \frac{\frac{8.0}{\alpha}}{\alpha \cdot \alpha}\right)\right)}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{e^{\log \left(1.0 + \frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0}\right)}}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r4097715 = beta;
double r4097716 = alpha;
double r4097717 = r4097715 - r4097716;
double r4097718 = r4097716 + r4097715;
double r4097719 = 2.0;
double r4097720 = r4097718 + r4097719;
double r4097721 = r4097717 / r4097720;
double r4097722 = 1.0;
double r4097723 = r4097721 + r4097722;
double r4097724 = r4097723 / r4097719;
return r4097724;
}
double f(double alpha, double beta) {
double r4097725 = beta;
double r4097726 = alpha;
double r4097727 = r4097725 - r4097726;
double r4097728 = r4097726 + r4097725;
double r4097729 = 2.0;
double r4097730 = r4097728 + r4097729;
double r4097731 = r4097727 / r4097730;
double r4097732 = -0.9999999551912412;
bool r4097733 = r4097731 <= r4097732;
double r4097734 = r4097725 / r4097730;
double r4097735 = 4.0;
double r4097736 = r4097726 * r4097726;
double r4097737 = r4097735 / r4097736;
double r4097738 = r4097729 / r4097726;
double r4097739 = 8.0;
double r4097740 = r4097739 / r4097726;
double r4097741 = r4097740 / r4097736;
double r4097742 = r4097738 + r4097741;
double r4097743 = r4097737 - r4097742;
double r4097744 = r4097734 - r4097743;
double r4097745 = r4097744 / r4097729;
double r4097746 = 1.0;
double r4097747 = r4097746 + r4097731;
double r4097748 = log(r4097747);
double r4097749 = exp(r4097748);
double r4097750 = r4097749 / r4097729;
double r4097751 = r4097733 ? r4097745 : r4097750;
return r4097751;
}



Bits error versus alpha



Bits error versus beta
Results
if (/ (- beta alpha) (+ (+ alpha beta) 2.0)) < -0.9999999551912412Initial program 59.7
rmApplied div-sub59.7
Applied associate-+l-57.8
Taylor expanded around inf 11.5
Simplified11.5
if -0.9999999551912412 < (/ (- beta alpha) (+ (+ alpha beta) 2.0)) Initial program 0.1
rmApplied add-exp-log0.1
Final simplification3.2
herbie shell --seed 2019158
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))