\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}\;\alpha \le 1.00414566459986 \cdot 10^{+210}:\\
\;\;\;\;\frac{\frac{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2}}}{\frac{\left(\alpha + \beta\right) + 2}{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\sqrt{\left(\alpha + \beta\right) + 2}}}}}{\left(1.0 + 2\right) + \left(\alpha + \beta\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2}}}{\frac{\left(\alpha + \beta\right) + 2}{\left(\left(\alpha \cdot \sqrt{\frac{1}{2}} + \beta \cdot \sqrt{\frac{1}{2}}\right) + \sqrt{\frac{1}{2}} \cdot 1.0\right) - \left(\frac{\beta}{\sqrt{\frac{1}{2}}} \cdot 0.125 + 0.5 \cdot \left(\alpha \cdot \sqrt{\frac{1}{8}}\right)\right)}}}{\left(1.0 + 2\right) + \left(\alpha + \beta\right)}\\
\end{array}double f(double alpha, double beta) {
double r4719988 = alpha;
double r4719989 = beta;
double r4719990 = r4719988 + r4719989;
double r4719991 = r4719989 * r4719988;
double r4719992 = r4719990 + r4719991;
double r4719993 = 1.0;
double r4719994 = r4719992 + r4719993;
double r4719995 = 2.0;
double r4719996 = 1.0;
double r4719997 = r4719995 * r4719996;
double r4719998 = r4719990 + r4719997;
double r4719999 = r4719994 / r4719998;
double r4720000 = r4719999 / r4719998;
double r4720001 = r4719998 + r4719993;
double r4720002 = r4720000 / r4720001;
return r4720002;
}
double f(double alpha, double beta) {
double r4720003 = alpha;
double r4720004 = 1.00414566459986e+210;
bool r4720005 = r4720003 <= r4720004;
double r4720006 = 1.0;
double r4720007 = beta;
double r4720008 = r4720003 + r4720007;
double r4720009 = 2.0;
double r4720010 = r4720008 + r4720009;
double r4720011 = sqrt(r4720010);
double r4720012 = r4720006 / r4720011;
double r4720013 = r4720007 * r4720003;
double r4720014 = r4720008 + r4720013;
double r4720015 = 1.0;
double r4720016 = r4720014 + r4720015;
double r4720017 = r4720016 / r4720011;
double r4720018 = r4720010 / r4720017;
double r4720019 = r4720012 / r4720018;
double r4720020 = r4720015 + r4720009;
double r4720021 = r4720020 + r4720008;
double r4720022 = r4720019 / r4720021;
double r4720023 = 0.5;
double r4720024 = sqrt(r4720023);
double r4720025 = r4720003 * r4720024;
double r4720026 = r4720007 * r4720024;
double r4720027 = r4720025 + r4720026;
double r4720028 = r4720024 * r4720015;
double r4720029 = r4720027 + r4720028;
double r4720030 = r4720007 / r4720024;
double r4720031 = 0.125;
double r4720032 = r4720030 * r4720031;
double r4720033 = 0.5;
double r4720034 = 0.125;
double r4720035 = sqrt(r4720034);
double r4720036 = r4720003 * r4720035;
double r4720037 = r4720033 * r4720036;
double r4720038 = r4720032 + r4720037;
double r4720039 = r4720029 - r4720038;
double r4720040 = r4720010 / r4720039;
double r4720041 = r4720012 / r4720040;
double r4720042 = r4720041 / r4720021;
double r4720043 = r4720005 ? r4720022 : r4720042;
return r4720043;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.00414566459986e+210Initial program 1.9
rmApplied associate-+l+1.9
rmApplied add-sqr-sqrt2.4
Applied *-un-lft-identity2.4
Applied times-frac2.4
Applied associate-/l*2.0
if 1.00414566459986e+210 < alpha Initial program 18.1
rmApplied associate-+l+18.1
rmApplied add-sqr-sqrt18.1
Applied *-un-lft-identity18.1
Applied times-frac18.1
Applied associate-/l*18.1
Taylor expanded around 0 6.1
Final simplification2.4
herbie shell --seed 2019168
(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)))