\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 13019.849401606787:\\
\;\;\;\;\frac{1.0 + \frac{\frac{\beta - \alpha}{\sqrt{\left(\beta + \alpha\right) + 2.0}}}{\sqrt{\left(\beta + \alpha\right) + 2.0}}}{2.0}\\
\mathbf{elif}\;\alpha \le 5.286547659356629 \cdot 10^{+135}:\\
\;\;\;\;\frac{\frac{\sqrt[3]{\beta}}{\left(\beta + \alpha\right) + 2.0} \cdot \left(\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}\right) - \mathsf{fma}\left(\left(\frac{-1}{\alpha}\right), 2.0, \left(\mathsf{fma}\left(\left(\frac{8.0}{\alpha \cdot \alpha}\right), \left(\frac{-1}{\alpha}\right), \left(\frac{4.0}{\alpha \cdot \alpha}\right)\right)\right)\right)}{2.0}\\
\mathbf{elif}\;\alpha \le 3.26519642354199 \cdot 10^{+153}:\\
\;\;\;\;\frac{e^{\log \left(\frac{\beta}{\left(\beta + \alpha\right) + 2.0}\right)} - \left(\frac{\alpha}{\left(\beta + \alpha\right) + 2.0} - 1.0\right)}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\sqrt[3]{\beta}}{\left(\beta + \alpha\right) + 2.0} \cdot \left(\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}\right) - \mathsf{fma}\left(\left(\frac{-1}{\alpha}\right), 2.0, \left(\mathsf{fma}\left(\left(\frac{8.0}{\alpha \cdot \alpha}\right), \left(\frac{-1}{\alpha}\right), \left(\frac{4.0}{\alpha \cdot \alpha}\right)\right)\right)\right)}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r8009372 = beta;
double r8009373 = alpha;
double r8009374 = r8009372 - r8009373;
double r8009375 = r8009373 + r8009372;
double r8009376 = 2.0;
double r8009377 = r8009375 + r8009376;
double r8009378 = r8009374 / r8009377;
double r8009379 = 1.0;
double r8009380 = r8009378 + r8009379;
double r8009381 = r8009380 / r8009376;
return r8009381;
}
double f(double alpha, double beta) {
double r8009382 = alpha;
double r8009383 = 13019.849401606787;
bool r8009384 = r8009382 <= r8009383;
double r8009385 = 1.0;
double r8009386 = beta;
double r8009387 = r8009386 - r8009382;
double r8009388 = r8009386 + r8009382;
double r8009389 = 2.0;
double r8009390 = r8009388 + r8009389;
double r8009391 = sqrt(r8009390);
double r8009392 = r8009387 / r8009391;
double r8009393 = r8009392 / r8009391;
double r8009394 = r8009385 + r8009393;
double r8009395 = r8009394 / r8009389;
double r8009396 = 5.286547659356629e+135;
bool r8009397 = r8009382 <= r8009396;
double r8009398 = cbrt(r8009386);
double r8009399 = r8009398 / r8009390;
double r8009400 = r8009398 * r8009398;
double r8009401 = r8009399 * r8009400;
double r8009402 = -1.0;
double r8009403 = r8009402 / r8009382;
double r8009404 = 8.0;
double r8009405 = r8009382 * r8009382;
double r8009406 = r8009404 / r8009405;
double r8009407 = 4.0;
double r8009408 = r8009407 / r8009405;
double r8009409 = fma(r8009406, r8009403, r8009408);
double r8009410 = fma(r8009403, r8009389, r8009409);
double r8009411 = r8009401 - r8009410;
double r8009412 = r8009411 / r8009389;
double r8009413 = 3.26519642354199e+153;
bool r8009414 = r8009382 <= r8009413;
double r8009415 = r8009386 / r8009390;
double r8009416 = log(r8009415);
double r8009417 = exp(r8009416);
double r8009418 = r8009382 / r8009390;
double r8009419 = r8009418 - r8009385;
double r8009420 = r8009417 - r8009419;
double r8009421 = r8009420 / r8009389;
double r8009422 = r8009414 ? r8009421 : r8009412;
double r8009423 = r8009397 ? r8009412 : r8009422;
double r8009424 = r8009384 ? r8009395 : r8009423;
return r8009424;
}



Bits error versus alpha



Bits error versus beta
if alpha < 13019.849401606787Initial program 0.0
rmApplied add-sqr-sqrt0.1
Applied associate-/r*0.1
if 13019.849401606787 < alpha < 5.286547659356629e+135 or 3.26519642354199e+153 < alpha Initial program 49.0
rmApplied div-sub49.0
Applied associate-+l-47.5
rmApplied *-un-lft-identity47.5
Applied *-un-lft-identity47.5
Applied *-un-lft-identity47.5
Applied distribute-lft-out47.5
Applied distribute-lft-out47.5
Applied add-cube-cbrt47.6
Applied times-frac47.6
Simplified47.6
Taylor expanded around inf 18.1
Simplified18.1
if 5.286547659356629e+135 < alpha < 3.26519642354199e+153Initial program 46.1
rmApplied div-sub46.1
Applied associate-+l-45.0
rmApplied add-exp-log45.2
Final simplification6.4
herbie shell --seed 2019124 +o rules:numerics
(FPCore (alpha beta)
:name "Octave 3.8, jcobi/1"
:pre (and (> alpha -1) (> beta -1))
(/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))