\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 1634825657092984630335766528:\\
\;\;\;\;\frac{e^{\log \left(\frac{\beta}{2 + \left(\beta + \alpha\right)} - \left(\frac{\alpha}{2 + \left(\beta + \alpha\right)} - 1\right)\right)}}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{2 + \left(\beta + \alpha\right)} - \left(\left(\frac{4}{\alpha \cdot \alpha} - \frac{2}{\alpha}\right) - \frac{8}{\alpha \cdot \left(\alpha \cdot \alpha\right)}\right)}{2}\\
\end{array}double f(double alpha, double beta) {
double r4613083 = beta;
double r4613084 = alpha;
double r4613085 = r4613083 - r4613084;
double r4613086 = r4613084 + r4613083;
double r4613087 = 2.0;
double r4613088 = r4613086 + r4613087;
double r4613089 = r4613085 / r4613088;
double r4613090 = 1.0;
double r4613091 = r4613089 + r4613090;
double r4613092 = r4613091 / r4613087;
return r4613092;
}
double f(double alpha, double beta) {
double r4613093 = alpha;
double r4613094 = 1.6348256570929846e+27;
bool r4613095 = r4613093 <= r4613094;
double r4613096 = beta;
double r4613097 = 2.0;
double r4613098 = r4613096 + r4613093;
double r4613099 = r4613097 + r4613098;
double r4613100 = r4613096 / r4613099;
double r4613101 = r4613093 / r4613099;
double r4613102 = 1.0;
double r4613103 = r4613101 - r4613102;
double r4613104 = r4613100 - r4613103;
double r4613105 = log(r4613104);
double r4613106 = exp(r4613105);
double r4613107 = r4613106 / r4613097;
double r4613108 = 4.0;
double r4613109 = r4613093 * r4613093;
double r4613110 = r4613108 / r4613109;
double r4613111 = r4613097 / r4613093;
double r4613112 = r4613110 - r4613111;
double r4613113 = 8.0;
double r4613114 = r4613093 * r4613109;
double r4613115 = r4613113 / r4613114;
double r4613116 = r4613112 - r4613115;
double r4613117 = r4613100 - r4613116;
double r4613118 = r4613117 / r4613097;
double r4613119 = r4613095 ? r4613107 : r4613118;
return r4613119;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.6348256570929846e+27Initial program 1.1
rmApplied div-sub1.1
Applied associate-+l-1.1
rmApplied add-exp-log1.1
if 1.6348256570929846e+27 < alpha Initial program 50.4
rmApplied div-sub50.3
Applied associate-+l-48.7
Taylor expanded around inf 18.4
Simplified18.4
Final simplification6.2
herbie shell --seed 2019179
(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))