\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{1 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 \cdot 1 + \left(\beta + \alpha\right)}}{2 \cdot 1 + \left(\beta + \alpha\right)}}{1 + \left(2 \cdot 1 + \left(\beta + \alpha\right)\right)} \le 0.0840188988913027900995444952059187926352:\\
\;\;\;\;\frac{\frac{\frac{\sqrt{1 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}}{2 \cdot 1 + \left(\beta + \alpha\right)}}{\sqrt{2 \cdot 1 + \left(\beta + \alpha\right)}}}{\sqrt{1 + \left(2 \cdot 1 + \left(\beta + \alpha\right)\right)}} \cdot \frac{\frac{\sqrt{1 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}}{\sqrt{2 \cdot 1 + \left(\beta + \alpha\right)}}}{\sqrt{1 + \left(2 \cdot 1 + \left(\beta + \alpha\right)\right)}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{\frac{2}{\alpha}}{\alpha} + \left(1 - \frac{1}{\alpha}\right)}{2 \cdot 1 + \left(\beta + \alpha\right)}}{1 + \left(2 \cdot 1 + \left(\beta + \alpha\right)\right)}\\
\end{array}double f(double alpha, double beta) {
double r4664485 = alpha;
double r4664486 = beta;
double r4664487 = r4664485 + r4664486;
double r4664488 = r4664486 * r4664485;
double r4664489 = r4664487 + r4664488;
double r4664490 = 1.0;
double r4664491 = r4664489 + r4664490;
double r4664492 = 2.0;
double r4664493 = r4664492 * r4664490;
double r4664494 = r4664487 + r4664493;
double r4664495 = r4664491 / r4664494;
double r4664496 = r4664495 / r4664494;
double r4664497 = r4664494 + r4664490;
double r4664498 = r4664496 / r4664497;
return r4664498;
}
double f(double alpha, double beta) {
double r4664499 = 1.0;
double r4664500 = alpha;
double r4664501 = beta;
double r4664502 = r4664500 * r4664501;
double r4664503 = r4664501 + r4664500;
double r4664504 = r4664502 + r4664503;
double r4664505 = r4664499 + r4664504;
double r4664506 = 2.0;
double r4664507 = r4664506 * r4664499;
double r4664508 = r4664507 + r4664503;
double r4664509 = r4664505 / r4664508;
double r4664510 = r4664509 / r4664508;
double r4664511 = r4664499 + r4664508;
double r4664512 = r4664510 / r4664511;
double r4664513 = 0.08401889889130279;
bool r4664514 = r4664512 <= r4664513;
double r4664515 = sqrt(r4664505);
double r4664516 = r4664515 / r4664508;
double r4664517 = sqrt(r4664508);
double r4664518 = r4664516 / r4664517;
double r4664519 = sqrt(r4664511);
double r4664520 = r4664518 / r4664519;
double r4664521 = r4664515 / r4664517;
double r4664522 = r4664521 / r4664519;
double r4664523 = r4664520 * r4664522;
double r4664524 = r4664506 / r4664500;
double r4664525 = r4664524 / r4664500;
double r4664526 = 1.0;
double r4664527 = r4664499 / r4664500;
double r4664528 = r4664526 - r4664527;
double r4664529 = r4664525 + r4664528;
double r4664530 = r4664529 / r4664508;
double r4664531 = r4664530 / r4664511;
double r4664532 = r4664514 ? r4664523 : r4664531;
return r4664532;
}



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)) < 0.08401889889130279Initial program 0.1
rmApplied add-sqr-sqrt0.6
Applied add-sqr-sqrt0.3
Applied *-un-lft-identity0.3
Applied add-sqr-sqrt0.2
Applied times-frac0.3
Applied times-frac0.2
Applied times-frac0.2
if 0.08401889889130279 < (/ (/ (/ (+ (+ (+ 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 62.1
Taylor expanded around inf 23.0
Simplified23.0
Final simplification1.6
herbie shell --seed 2019170
(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)))