\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}\;\beta \le 8.4551866412840066 \cdot 10^{162}:\\
\;\;\;\;\frac{\frac{\sqrt{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\frac{\left(\alpha + \beta\right) + \mathsf{fma}\left(2, 1, 1\right)}{\sqrt{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}} \cdot \mathsf{fma}\left(1, 2, \alpha + \beta\right)}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta) {
double r136893 = alpha;
double r136894 = beta;
double r136895 = r136893 + r136894;
double r136896 = r136894 * r136893;
double r136897 = r136895 + r136896;
double r136898 = 1.0;
double r136899 = r136897 + r136898;
double r136900 = 2.0;
double r136901 = r136900 * r136898;
double r136902 = r136895 + r136901;
double r136903 = r136899 / r136902;
double r136904 = r136903 / r136902;
double r136905 = r136902 + r136898;
double r136906 = r136904 / r136905;
return r136906;
}
double f(double alpha, double beta) {
double r136907 = beta;
double r136908 = 8.455186641284007e+162;
bool r136909 = r136907 <= r136908;
double r136910 = alpha;
double r136911 = r136910 + r136907;
double r136912 = r136907 * r136910;
double r136913 = r136911 + r136912;
double r136914 = 1.0;
double r136915 = r136913 + r136914;
double r136916 = 2.0;
double r136917 = r136916 * r136914;
double r136918 = r136911 + r136917;
double r136919 = r136915 / r136918;
double r136920 = sqrt(r136919);
double r136921 = sqrt(r136918);
double r136922 = r136920 / r136921;
double r136923 = fma(r136916, r136914, r136914);
double r136924 = r136911 + r136923;
double r136925 = sqrt(r136915);
double r136926 = r136924 / r136925;
double r136927 = fma(r136914, r136916, r136911);
double r136928 = r136926 * r136927;
double r136929 = r136922 / r136928;
double r136930 = 0.0;
double r136931 = r136909 ? r136929 : r136930;
return r136931;
}



Bits error versus alpha



Bits error versus beta
if beta < 8.455186641284007e+162Initial program 1.4
rmApplied add-sqr-sqrt1.9
Applied add-sqr-sqrt1.5
Applied times-frac1.5
Applied associate-/l*1.5
Simplified1.5
rmApplied sqrt-div2.0
Applied associate-/r/2.0
Applied associate-*l*2.0
Simplified1.4
if 8.455186641284007e+162 < beta Initial program 17.3
Taylor expanded around inf 8.1
Final simplification2.5
herbie shell --seed 2020021 +o rules:numerics
(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)))