\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\begin{array}{l}
\mathbf{if}\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0} \le 0.08636743088546808:\\
\;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(\left(\beta \cdot \sqrt{\frac{1}{2}} + \sqrt{\frac{1}{2}} \cdot \alpha\right) + \sqrt{\frac{1}{2}} \cdot 1.0\right) - \left(\frac{\beta}{\sqrt{\frac{1}{2}}} \cdot 0.125 + \left(\alpha \cdot \sqrt{\frac{1}{8}}\right) \cdot 0.5\right)}{2 + \left(\beta + \alpha\right)}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}} \cdot \frac{\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}}\\
\end{array}double f(double alpha, double beta) {
double r2525999 = alpha;
double r2526000 = beta;
double r2526001 = r2525999 + r2526000;
double r2526002 = r2526000 * r2525999;
double r2526003 = r2526001 + r2526002;
double r2526004 = 1.0;
double r2526005 = r2526003 + r2526004;
double r2526006 = 2.0;
double r2526007 = 1.0;
double r2526008 = r2526006 * r2526007;
double r2526009 = r2526001 + r2526008;
double r2526010 = r2526005 / r2526009;
double r2526011 = r2526010 / r2526009;
double r2526012 = r2526009 + r2526004;
double r2526013 = r2526011 / r2526012;
return r2526013;
}
double f(double alpha, double beta) {
double r2526014 = 1.0;
double r2526015 = alpha;
double r2526016 = beta;
double r2526017 = r2526015 * r2526016;
double r2526018 = r2526016 + r2526015;
double r2526019 = r2526017 + r2526018;
double r2526020 = r2526014 + r2526019;
double r2526021 = 2.0;
double r2526022 = r2526021 + r2526018;
double r2526023 = r2526020 / r2526022;
double r2526024 = r2526023 / r2526022;
double r2526025 = r2526022 + r2526014;
double r2526026 = r2526024 / r2526025;
double r2526027 = 0.08636743088546808;
bool r2526028 = r2526026 <= r2526027;
double r2526029 = 0.5;
double r2526030 = sqrt(r2526029);
double r2526031 = r2526016 * r2526030;
double r2526032 = r2526030 * r2526015;
double r2526033 = r2526031 + r2526032;
double r2526034 = r2526030 * r2526014;
double r2526035 = r2526033 + r2526034;
double r2526036 = r2526016 / r2526030;
double r2526037 = 0.125;
double r2526038 = r2526036 * r2526037;
double r2526039 = 0.125;
double r2526040 = sqrt(r2526039);
double r2526041 = r2526015 * r2526040;
double r2526042 = 0.5;
double r2526043 = r2526041 * r2526042;
double r2526044 = r2526038 + r2526043;
double r2526045 = r2526035 - r2526044;
double r2526046 = r2526045 / r2526022;
double r2526047 = sqrt(r2526025);
double r2526048 = r2526046 / r2526047;
double r2526049 = 1.0;
double r2526050 = sqrt(r2526022);
double r2526051 = r2526049 / r2526050;
double r2526052 = r2526051 / r2526047;
double r2526053 = r2526048 * r2526052;
double r2526054 = r2526028 ? r2526026 : r2526053;
return r2526054;
}



Bits error versus alpha



Bits error versus beta
Results
if (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) < 0.08636743088546808Initial program 0.1
if 0.08636743088546808 < (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) Initial program 61.7
rmApplied add-sqr-sqrt61.8
Applied *-un-lft-identity61.8
Applied add-sqr-sqrt61.8
Applied *-un-lft-identity61.8
Applied times-frac61.8
Applied times-frac61.8
Applied times-frac61.8
Taylor expanded around 0 23.9
Final simplification1.5
herbie shell --seed 2019156
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1) (> beta -1))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))