\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 7.9304048996115863 \cdot 10^{-30}:\\
\;\;\;\;\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{\frac{\alpha + \left(1 + \beta\right)}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\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 r1025372 = alpha;
double r1025373 = beta;
double r1025374 = r1025372 + r1025373;
double r1025375 = r1025373 * r1025372;
double r1025376 = r1025374 + r1025375;
double r1025377 = 1.0;
double r1025378 = r1025376 + r1025377;
double r1025379 = 2.0;
double r1025380 = r1025379 * r1025377;
double r1025381 = r1025374 + r1025380;
double r1025382 = r1025378 / r1025381;
double r1025383 = r1025382 / r1025381;
double r1025384 = r1025381 + r1025377;
double r1025385 = r1025383 / r1025384;
return r1025385;
}
double f(double alpha, double beta) {
double r1025386 = alpha;
double r1025387 = beta;
double r1025388 = r1025386 + r1025387;
double r1025389 = r1025387 * r1025386;
double r1025390 = r1025388 + r1025389;
double r1025391 = 1.0;
double r1025392 = r1025390 + r1025391;
double r1025393 = 2.0;
double r1025394 = r1025393 * r1025391;
double r1025395 = r1025388 + r1025394;
double r1025396 = r1025392 / r1025395;
double r1025397 = r1025396 / r1025395;
double r1025398 = r1025395 + r1025391;
double r1025399 = r1025397 / r1025398;
double r1025400 = 7.930404899611586e-30;
bool r1025401 = r1025399 <= r1025400;
double r1025402 = r1025391 + r1025387;
double r1025403 = r1025386 + r1025402;
double r1025404 = r1025403 / r1025395;
double r1025405 = r1025404 / r1025395;
double r1025406 = r1025405 / r1025398;
double r1025407 = r1025401 ? r1025399 : r1025406;
return r1025407;
}



Bits error versus alpha



Bits error versus beta
Results
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)) < 7.930404899611586e-30Initial program 0.1
if 7.930404899611586e-30 < (/ (/ (/ (+ (+ (+ 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 7.4
Taylor expanded around 0 2.6
Final simplification1.4
herbie shell --seed 2019198
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1.0) (> beta -1.0))
(/ (/ (/ (+ (+ (+ 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)))