\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}\;\alpha \le 8.960262165484263485416129493027889571996 \cdot 10^{174}:\\
\;\;\;\;\frac{\frac{\frac{1}{\frac{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}{\sqrt{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}}}}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\frac{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}{\frac{\sqrt{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(1 + \frac{2}{{\alpha}^{2}}\right) - \frac{1}{\alpha}}{\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 r97023 = alpha;
double r97024 = beta;
double r97025 = r97023 + r97024;
double r97026 = r97024 * r97023;
double r97027 = r97025 + r97026;
double r97028 = 1.0;
double r97029 = r97027 + r97028;
double r97030 = 2.0;
double r97031 = r97030 * r97028;
double r97032 = r97025 + r97031;
double r97033 = r97029 / r97032;
double r97034 = r97033 / r97032;
double r97035 = r97032 + r97028;
double r97036 = r97034 / r97035;
return r97036;
}
double f(double alpha, double beta) {
double r97037 = alpha;
double r97038 = 8.960262165484263e+174;
bool r97039 = r97037 <= r97038;
double r97040 = 1.0;
double r97041 = beta;
double r97042 = r97037 + r97041;
double r97043 = 2.0;
double r97044 = 1.0;
double r97045 = r97043 * r97044;
double r97046 = r97042 + r97045;
double r97047 = sqrt(r97046);
double r97048 = r97041 * r97037;
double r97049 = r97042 + r97048;
double r97050 = r97049 + r97044;
double r97051 = sqrt(r97050);
double r97052 = r97047 / r97051;
double r97053 = r97040 / r97052;
double r97054 = r97053 / r97047;
double r97055 = r97046 + r97044;
double r97056 = r97051 / r97046;
double r97057 = r97055 / r97056;
double r97058 = r97054 / r97057;
double r97059 = 2.0;
double r97060 = pow(r97037, r97059);
double r97061 = r97043 / r97060;
double r97062 = r97040 + r97061;
double r97063 = r97044 / r97037;
double r97064 = r97062 - r97063;
double r97065 = r97064 / r97046;
double r97066 = r97065 / r97055;
double r97067 = r97039 ? r97058 : r97066;
return r97067;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 8.960262165484263e+174Initial program 1.4
rmApplied add-sqr-sqrt1.9
Applied add-sqr-sqrt2.3
Applied add-sqr-sqrt2.2
Applied times-frac2.2
Applied times-frac2.0
Applied associate-/l*2.0
Simplified1.4
rmApplied *-un-lft-identity1.4
Applied sqrt-prod1.4
Applied associate-/l*1.4
if 8.960262165484263e+174 < alpha Initial program 16.4
Taylor expanded around inf 7.3
Simplified7.3
Final simplification2.3
herbie shell --seed 2019235
(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)))