\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}\;\alpha \le 3.3940725538369387 \cdot 10^{+163}:\\
\;\;\;\;\frac{\frac{\frac{1.0 + \left(\beta \cdot \alpha + \left(\alpha + \beta\right)\right)}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + 2}}{\left(1.0 + \left(\alpha + \beta\right)\right) + 2}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta) {
double r52492441 = alpha;
double r52492442 = beta;
double r52492443 = r52492441 + r52492442;
double r52492444 = r52492442 * r52492441;
double r52492445 = r52492443 + r52492444;
double r52492446 = 1.0;
double r52492447 = r52492445 + r52492446;
double r52492448 = 2.0;
double r52492449 = 1.0;
double r52492450 = r52492448 * r52492449;
double r52492451 = r52492443 + r52492450;
double r52492452 = r52492447 / r52492451;
double r52492453 = r52492452 / r52492451;
double r52492454 = r52492451 + r52492446;
double r52492455 = r52492453 / r52492454;
return r52492455;
}
double f(double alpha, double beta) {
double r52492456 = alpha;
double r52492457 = 3.3940725538369387e+163;
bool r52492458 = r52492456 <= r52492457;
double r52492459 = 1.0;
double r52492460 = beta;
double r52492461 = r52492460 * r52492456;
double r52492462 = r52492456 + r52492460;
double r52492463 = r52492461 + r52492462;
double r52492464 = r52492459 + r52492463;
double r52492465 = 2.0;
double r52492466 = r52492462 + r52492465;
double r52492467 = r52492464 / r52492466;
double r52492468 = r52492467 / r52492466;
double r52492469 = r52492459 + r52492462;
double r52492470 = r52492469 + r52492465;
double r52492471 = r52492468 / r52492470;
double r52492472 = 0.0;
double r52492473 = r52492458 ? r52492471 : r52492472;
return r52492473;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 3.3940725538369387e+163Initial program 1.3
Simplified1.3
if 3.3940725538369387e+163 < alpha Initial program 15.9
Simplified15.9
Taylor expanded around inf 7.8
Final simplification2.3
herbie shell --seed 2019121
(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)))