\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\begin{array}{l}
\mathbf{if}\;\beta \le 2.7175934019048462 \cdot 10^{+157}:\\
\;\;\;\;\frac{\frac{1}{\frac{\left(\beta + \alpha\right) + 2}{\frac{1.0 + \left(\left(\beta + \alpha\right) + \alpha \cdot \beta\right)}{\left(\beta + \alpha\right) + 2}}}}{\left(\left(\beta + \alpha\right) + 2\right) + 1.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{\frac{\beta}{\alpha} + \left(\frac{\alpha}{\beta} + 2\right)}}{\left(\left(\beta + \alpha\right) + 2\right) + 1.0}\\
\end{array}double f(double alpha, double beta) {
double r3463901 = alpha;
double r3463902 = beta;
double r3463903 = r3463901 + r3463902;
double r3463904 = r3463902 * r3463901;
double r3463905 = r3463903 + r3463904;
double r3463906 = 1.0;
double r3463907 = r3463905 + r3463906;
double r3463908 = 2.0;
double r3463909 = 1.0;
double r3463910 = r3463908 * r3463909;
double r3463911 = r3463903 + r3463910;
double r3463912 = r3463907 / r3463911;
double r3463913 = r3463912 / r3463911;
double r3463914 = r3463911 + r3463906;
double r3463915 = r3463913 / r3463914;
return r3463915;
}
double f(double alpha, double beta) {
double r3463916 = beta;
double r3463917 = 2.7175934019048462e+157;
bool r3463918 = r3463916 <= r3463917;
double r3463919 = 1.0;
double r3463920 = alpha;
double r3463921 = r3463916 + r3463920;
double r3463922 = 2.0;
double r3463923 = r3463921 + r3463922;
double r3463924 = 1.0;
double r3463925 = r3463920 * r3463916;
double r3463926 = r3463921 + r3463925;
double r3463927 = r3463924 + r3463926;
double r3463928 = r3463927 / r3463923;
double r3463929 = r3463923 / r3463928;
double r3463930 = r3463919 / r3463929;
double r3463931 = r3463923 + r3463924;
double r3463932 = r3463930 / r3463931;
double r3463933 = r3463916 / r3463920;
double r3463934 = r3463920 / r3463916;
double r3463935 = r3463934 + r3463922;
double r3463936 = r3463933 + r3463935;
double r3463937 = r3463919 / r3463936;
double r3463938 = r3463937 / r3463931;
double r3463939 = r3463918 ? r3463932 : r3463938;
return r3463939;
}



Bits error versus alpha



Bits error versus beta
Results
if beta < 2.7175934019048462e+157Initial program 1.1
rmApplied clear-num1.1
if 2.7175934019048462e+157 < beta Initial program 14.6
rmApplied clear-num14.6
Taylor expanded around inf 0.3
Final simplification1.0
herbie shell --seed 2019163 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))