\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}\;\alpha \le 9.8095473062592694 \cdot 10^{111}:\\
\;\;\;\;\frac{\frac{\frac{1 + \mathsf{fma}\left(\alpha, \beta, \alpha + \beta\right)}{\mathsf{fma}\left(1, 2, \alpha + \beta\right)}}{\mathsf{fma}\left(1, 2, \alpha + \beta\right)}}{\left(\alpha + \beta\right) + \mathsf{fma}\left(2, 1, 1\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(1 - \frac{1}{\alpha}\right) + \frac{2}{{\alpha}^{2}}}{\mathsf{fma}\left(1, 2, \alpha + \beta\right)}}{\left(\alpha + \beta\right) + \mathsf{fma}\left(2, 1, 1\right)}\\
\end{array}double f(double alpha, double beta) {
double r143195 = alpha;
double r143196 = beta;
double r143197 = r143195 + r143196;
double r143198 = r143196 * r143195;
double r143199 = r143197 + r143198;
double r143200 = 1.0;
double r143201 = r143199 + r143200;
double r143202 = 2.0;
double r143203 = r143202 * r143200;
double r143204 = r143197 + r143203;
double r143205 = r143201 / r143204;
double r143206 = r143205 / r143204;
double r143207 = r143204 + r143200;
double r143208 = r143206 / r143207;
return r143208;
}
double f(double alpha, double beta) {
double r143209 = alpha;
double r143210 = 9.80954730625927e+111;
bool r143211 = r143209 <= r143210;
double r143212 = 1.0;
double r143213 = beta;
double r143214 = r143209 + r143213;
double r143215 = fma(r143209, r143213, r143214);
double r143216 = r143212 + r143215;
double r143217 = 2.0;
double r143218 = fma(r143212, r143217, r143214);
double r143219 = r143216 / r143218;
double r143220 = r143219 / r143218;
double r143221 = fma(r143217, r143212, r143212);
double r143222 = r143214 + r143221;
double r143223 = r143220 / r143222;
double r143224 = 1.0;
double r143225 = r143212 / r143209;
double r143226 = r143224 - r143225;
double r143227 = 2.0;
double r143228 = pow(r143209, r143227);
double r143229 = r143217 / r143228;
double r143230 = r143226 + r143229;
double r143231 = r143230 / r143218;
double r143232 = r143231 / r143222;
double r143233 = r143211 ? r143223 : r143232;
return r143233;
}



Bits error versus alpha



Bits error versus beta
if alpha < 9.80954730625927e+111Initial program 0.8
Simplified0.8
rmApplied *-un-lft-identity0.8
Applied *-un-lft-identity0.8
Applied *-un-lft-identity0.8
Applied times-frac0.8
Applied times-frac0.8
Simplified0.8
if 9.80954730625927e+111 < alpha Initial program 13.8
Simplified13.8
rmApplied *-un-lft-identity13.8
Applied *-un-lft-identity13.8
Applied *-un-lft-identity13.8
Applied times-frac13.8
Applied times-frac13.8
Simplified13.8
Taylor expanded around inf 8.9
Simplified8.9
Final simplification2.5
herbie shell --seed 2020042 +o rules:numerics
(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)))