\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 11629067263522.379:\\
\;\;\;\;\frac{e^{\log \left(\frac{\beta}{2.0 + \left(\beta + \alpha\right)} - \left(\frac{\alpha}{2.0 + \left(\beta + \alpha\right)} - 1.0\right)\right)}}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\beta \cdot \frac{1}{2.0 + \left(\beta + \alpha\right)} - \left(\left(\frac{\frac{4.0}{\alpha}}{\alpha} - \frac{2.0}{\alpha}\right) - \frac{\frac{8.0}{\alpha}}{\alpha \cdot \alpha}\right)}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r4534931 = beta;
double r4534932 = alpha;
double r4534933 = r4534931 - r4534932;
double r4534934 = r4534932 + r4534931;
double r4534935 = 2.0;
double r4534936 = r4534934 + r4534935;
double r4534937 = r4534933 / r4534936;
double r4534938 = 1.0;
double r4534939 = r4534937 + r4534938;
double r4534940 = r4534939 / r4534935;
return r4534940;
}
double f(double alpha, double beta) {
double r4534941 = alpha;
double r4534942 = 11629067263522.379;
bool r4534943 = r4534941 <= r4534942;
double r4534944 = beta;
double r4534945 = 2.0;
double r4534946 = r4534944 + r4534941;
double r4534947 = r4534945 + r4534946;
double r4534948 = r4534944 / r4534947;
double r4534949 = r4534941 / r4534947;
double r4534950 = 1.0;
double r4534951 = r4534949 - r4534950;
double r4534952 = r4534948 - r4534951;
double r4534953 = log(r4534952);
double r4534954 = exp(r4534953);
double r4534955 = r4534954 / r4534945;
double r4534956 = 1.0;
double r4534957 = r4534956 / r4534947;
double r4534958 = r4534944 * r4534957;
double r4534959 = 4.0;
double r4534960 = r4534959 / r4534941;
double r4534961 = r4534960 / r4534941;
double r4534962 = r4534945 / r4534941;
double r4534963 = r4534961 - r4534962;
double r4534964 = 8.0;
double r4534965 = r4534964 / r4534941;
double r4534966 = r4534941 * r4534941;
double r4534967 = r4534965 / r4534966;
double r4534968 = r4534963 - r4534967;
double r4534969 = r4534958 - r4534968;
double r4534970 = r4534969 / r4534945;
double r4534971 = r4534943 ? r4534955 : r4534970;
return r4534971;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 11629067263522.379Initial program 0.3
rmApplied div-sub0.3
Applied associate-+l-0.3
rmApplied add-exp-log0.3
if 11629067263522.379 < alpha Initial program 49.9
rmApplied div-sub49.9
Applied associate-+l-48.3
rmApplied add-log-exp48.3
rmApplied div-inv48.3
Taylor expanded around inf 18.5
Simplified18.5
Final simplification6.0
herbie shell --seed 2019163 +o rules:numerics
(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))