\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 r6652753 = beta;
double r6652754 = alpha;
double r6652755 = r6652753 - r6652754;
double r6652756 = r6652754 + r6652753;
double r6652757 = 2.0;
double r6652758 = r6652756 + r6652757;
double r6652759 = r6652755 / r6652758;
double r6652760 = 1.0;
double r6652761 = r6652759 + r6652760;
double r6652762 = r6652761 / r6652757;
return r6652762;
}
double f(double alpha, double beta) {
double r6652763 = beta;
double r6652764 = alpha;
double r6652765 = r6652763 - r6652764;
double r6652766 = r6652764 + r6652763;
double r6652767 = 2.0;
double r6652768 = r6652766 + r6652767;
double r6652769 = r6652765 / r6652768;
double r6652770 = -0.9999999551912412;
bool r6652771 = r6652769 <= r6652770;
double r6652772 = r6652763 / r6652768;
double r6652773 = 4.0;
double r6652774 = r6652764 * r6652764;
double r6652775 = r6652773 / r6652774;
double r6652776 = r6652767 / r6652764;
double r6652777 = 8.0;
double r6652778 = r6652777 / r6652764;
double r6652779 = r6652778 / r6652774;
double r6652780 = r6652776 + r6652779;
double r6652781 = r6652775 - r6652780;
double r6652782 = r6652772 - r6652781;
double r6652783 = r6652782 / r6652767;
double r6652784 = 1.0;
double r6652785 = r6652784 + r6652769;
double r6652786 = log(r6652785);
double r6652787 = exp(r6652786);
double r6652788 = r6652787 / r6652767;
double r6652789 = r6652771 ? r6652783 : r6652788;
return r6652789;
}



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