\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 1.80402895061238771139523421196263224057 \cdot 10^{158}:\\
\;\;\;\;\frac{\sqrt{\frac{1}{\frac{\frac{\alpha + \left(\beta + 1 \cdot 2\right)}{\left(1 + \left(\beta + \alpha\right)\right) + \beta \cdot \alpha}}{\frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)}}}}}{\left(\left(\beta + \alpha\right) + 1 \cdot 2\right) + 1} \cdot \sqrt{\frac{1}{\frac{\frac{\alpha + \left(\beta + 1 \cdot 2\right)}{\left(1 + \left(\beta + \alpha\right)\right) + \beta \cdot \alpha}}{\frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)}}}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{\left(2 + \frac{\alpha}{\beta}\right) + \frac{\beta}{\alpha}}}{\left(\left(\beta + \alpha\right) + 1 \cdot 2\right) + 1}\\
\end{array}double f(double alpha, double beta) {
double r610161 = alpha;
double r610162 = beta;
double r610163 = r610161 + r610162;
double r610164 = r610162 * r610161;
double r610165 = r610163 + r610164;
double r610166 = 1.0;
double r610167 = r610165 + r610166;
double r610168 = 2.0;
double r610169 = r610168 * r610166;
double r610170 = r610163 + r610169;
double r610171 = r610167 / r610170;
double r610172 = r610171 / r610170;
double r610173 = r610170 + r610166;
double r610174 = r610172 / r610173;
return r610174;
}
double f(double alpha, double beta) {
double r610175 = alpha;
double r610176 = 1.8040289506123877e+158;
bool r610177 = r610175 <= r610176;
double r610178 = 1.0;
double r610179 = beta;
double r610180 = 1.0;
double r610181 = 2.0;
double r610182 = r610180 * r610181;
double r610183 = r610179 + r610182;
double r610184 = r610175 + r610183;
double r610185 = r610179 + r610175;
double r610186 = r610180 + r610185;
double r610187 = r610179 * r610175;
double r610188 = r610186 + r610187;
double r610189 = r610184 / r610188;
double r610190 = r610178 / r610184;
double r610191 = r610189 / r610190;
double r610192 = r610178 / r610191;
double r610193 = sqrt(r610192);
double r610194 = r610185 + r610182;
double r610195 = r610194 + r610180;
double r610196 = r610193 / r610195;
double r610197 = r610196 * r610193;
double r610198 = 2.0;
double r610199 = r610175 / r610179;
double r610200 = r610198 + r610199;
double r610201 = r610179 / r610175;
double r610202 = r610200 + r610201;
double r610203 = r610178 / r610202;
double r610204 = r610203 / r610195;
double r610205 = r610177 ? r610197 : r610204;
return r610205;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 1.8040289506123877e+158Initial program 1.4
rmApplied *-un-lft-identity1.4
Applied *-un-lft-identity1.4
Applied times-frac1.4
Applied associate-/l*1.4
Simplified1.4
rmApplied div-inv1.4
Applied associate-/r*1.4
rmApplied *-un-lft-identity1.4
Applied add-sqr-sqrt1.5
Applied times-frac1.5
if 1.8040289506123877e+158 < alpha Initial program 18.0
rmApplied *-un-lft-identity18.0
Applied *-un-lft-identity18.0
Applied times-frac18.0
Applied associate-/l*18.0
Simplified18.0
Taylor expanded around inf 0.1
Final simplification1.3
herbie shell --seed 2019194
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/3"
:pre (and (> alpha -1.0) (> beta -1.0))
(/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ alpha beta) (* 2.0 1.0))) (+ (+ (+ alpha beta) (* 2.0 1.0)) 1.0)))