\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\begin{array}{l}
\mathbf{if}\;\beta \le 1.39247876717738 \cdot 10^{167}:\\
\;\;\;\;\frac{\frac{\frac{\left(\beta \cdot \alpha + \left(\alpha + \beta\right)\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(2 \cdot \frac{1}{{\beta}^{2}} + 1\right) - 1 \cdot \frac{1}{\beta}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\
\end{array}double f(double alpha, double beta) {
double r116336 = alpha;
double r116337 = beta;
double r116338 = r116336 + r116337;
double r116339 = r116337 * r116336;
double r116340 = r116338 + r116339;
double r116341 = 1.0;
double r116342 = r116340 + r116341;
double r116343 = 2.0;
double r116344 = r116343 * r116341;
double r116345 = r116338 + r116344;
double r116346 = r116342 / r116345;
double r116347 = r116346 / r116345;
double r116348 = r116345 + r116341;
double r116349 = r116347 / r116348;
return r116349;
}
double f(double alpha, double beta) {
double r116350 = beta;
double r116351 = 1.3924787671773796e+167;
bool r116352 = r116350 <= r116351;
double r116353 = alpha;
double r116354 = r116350 * r116353;
double r116355 = r116353 + r116350;
double r116356 = r116354 + r116355;
double r116357 = 1.0;
double r116358 = r116356 + r116357;
double r116359 = 2.0;
double r116360 = r116359 * r116357;
double r116361 = r116355 + r116360;
double r116362 = r116358 / r116361;
double r116363 = r116362 / r116361;
double r116364 = r116361 + r116357;
double r116365 = r116363 / r116364;
double r116366 = 1.0;
double r116367 = 2.0;
double r116368 = pow(r116350, r116367);
double r116369 = r116366 / r116368;
double r116370 = r116359 * r116369;
double r116371 = r116370 + r116366;
double r116372 = r116366 / r116350;
double r116373 = r116357 * r116372;
double r116374 = r116371 - r116373;
double r116375 = r116374 / r116361;
double r116376 = r116375 / r116364;
double r116377 = r116352 ? r116365 : r116376;
return r116377;
}



Bits error versus alpha



Bits error versus beta
Results
if beta < 1.3924787671773796e+167Initial program 1.4
rmApplied +-commutative1.4
if 1.3924787671773796e+167 < beta Initial program 16.9
rmApplied +-commutative16.9
Taylor expanded around inf 7.6
Final simplification2.3
herbie shell --seed 2020062
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:precision binary64
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1)))