\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}\;\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} \le 0.083333333333973303:\\
\;\;\;\;\sqrt{\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}} \cdot \sqrt{\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}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\mathsf{fma}\left(2, \frac{1}{{\alpha}^{2}}, 1 - 1 \cdot \frac{1}{\alpha}\right)}{\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 r188251 = alpha;
double r188252 = beta;
double r188253 = r188251 + r188252;
double r188254 = r188252 * r188251;
double r188255 = r188253 + r188254;
double r188256 = 1.0;
double r188257 = r188255 + r188256;
double r188258 = 2.0;
double r188259 = r188258 * r188256;
double r188260 = r188253 + r188259;
double r188261 = r188257 / r188260;
double r188262 = r188261 / r188260;
double r188263 = r188260 + r188256;
double r188264 = r188262 / r188263;
return r188264;
}
double f(double alpha, double beta) {
double r188265 = alpha;
double r188266 = beta;
double r188267 = r188265 + r188266;
double r188268 = r188266 * r188265;
double r188269 = r188267 + r188268;
double r188270 = 1.0;
double r188271 = r188269 + r188270;
double r188272 = 2.0;
double r188273 = r188272 * r188270;
double r188274 = r188267 + r188273;
double r188275 = r188271 / r188274;
double r188276 = r188275 / r188274;
double r188277 = r188274 + r188270;
double r188278 = r188276 / r188277;
double r188279 = 0.0833333333339733;
bool r188280 = r188278 <= r188279;
double r188281 = sqrt(r188278);
double r188282 = r188281 * r188281;
double r188283 = 1.0;
double r188284 = 2.0;
double r188285 = pow(r188265, r188284);
double r188286 = r188283 / r188285;
double r188287 = r188283 / r188265;
double r188288 = r188270 * r188287;
double r188289 = r188283 - r188288;
double r188290 = fma(r188272, r188286, r188289);
double r188291 = r188290 / r188274;
double r188292 = r188291 / r188277;
double r188293 = r188280 ? r188282 : r188292;
return r188293;
}



Bits error versus alpha



Bits error versus beta
if (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ (+ alpha beta) (* 2.0 1.0)) 1.0)) < 0.0833333333339733Initial program 0.1
rmApplied add-sqr-sqrt0.2
if 0.0833333333339733 < (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ (+ alpha beta) (* 2.0 1.0)) 1.0)) Initial program 51.0
Taylor expanded around inf 29.5
Simplified29.5
Final simplification2.2
herbie shell --seed 2020059 +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)))