\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}\;\beta \le 3.5888856498529296 \cdot 10^{+157}:\\
\;\;\;\;\frac{\frac{\frac{1}{\left(\beta + \alpha\right) + 2}}{\frac{\left(\left(\beta + \alpha\right) + 2\right) + 1.0}{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}}}{\left(\beta + \alpha\right) + 2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{1}{\left(\beta + \alpha\right) + 2}}{\left(\frac{1}{\beta} + \frac{1}{\alpha}\right) - \frac{1}{{\alpha}^{2}}}}{\left(\beta + \alpha\right) + 2}\\
\end{array}double f(double alpha, double beta) {
double r4747839 = alpha;
double r4747840 = beta;
double r4747841 = r4747839 + r4747840;
double r4747842 = r4747840 * r4747839;
double r4747843 = r4747841 + r4747842;
double r4747844 = 1.0;
double r4747845 = r4747843 + r4747844;
double r4747846 = 2.0;
double r4747847 = 1.0;
double r4747848 = r4747846 * r4747847;
double r4747849 = r4747841 + r4747848;
double r4747850 = r4747845 / r4747849;
double r4747851 = r4747850 / r4747849;
double r4747852 = r4747849 + r4747844;
double r4747853 = r4747851 / r4747852;
return r4747853;
}
double f(double alpha, double beta) {
double r4747854 = beta;
double r4747855 = 3.5888856498529296e+157;
bool r4747856 = r4747854 <= r4747855;
double r4747857 = 1.0;
double r4747858 = alpha;
double r4747859 = r4747854 + r4747858;
double r4747860 = 2.0;
double r4747861 = r4747859 + r4747860;
double r4747862 = r4747857 / r4747861;
double r4747863 = 1.0;
double r4747864 = r4747861 + r4747863;
double r4747865 = r4747858 * r4747854;
double r4747866 = r4747865 + r4747859;
double r4747867 = r4747863 + r4747866;
double r4747868 = r4747864 / r4747867;
double r4747869 = r4747862 / r4747868;
double r4747870 = r4747869 / r4747861;
double r4747871 = r4747857 / r4747854;
double r4747872 = r4747857 / r4747858;
double r4747873 = r4747871 + r4747872;
double r4747874 = pow(r4747858, r4747860);
double r4747875 = r4747857 / r4747874;
double r4747876 = r4747873 - r4747875;
double r4747877 = r4747862 / r4747876;
double r4747878 = r4747877 / r4747861;
double r4747879 = r4747856 ? r4747870 : r4747878;
return r4747879;
}



Bits error versus alpha



Bits error versus beta
Results
if beta < 3.5888856498529296e+157Initial program 1.4
rmApplied clear-num1.4
rmApplied *-un-lft-identity1.4
Applied associate-/r/1.4
Applied times-frac1.4
Applied associate-/l*1.4
rmApplied associate-/r/1.4
Applied associate-/r*1.4
if 3.5888856498529296e+157 < beta Initial program 17.3
rmApplied clear-num17.3
rmApplied *-un-lft-identity17.3
Applied associate-/r/17.3
Applied times-frac17.3
Applied associate-/l*17.3
rmApplied associate-/r/17.3
Applied associate-/r*17.3
Taylor expanded around inf 0.3
Final simplification1.2
herbie shell --seed 2019155
(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)))