\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 6.404044802162421 \cdot 10^{+32}:\\
\;\;\;\;\frac{\frac{\beta}{2.0 + \left(\beta + \alpha\right)} - \sqrt[3]{\left(\frac{\alpha}{2.0 + \left(\beta + \alpha\right)} - 1.0\right) \cdot \left(\left(\frac{\alpha}{2.0 + \left(\beta + \alpha\right)} - 1.0\right) \cdot \left(\frac{\alpha}{2.0 + \left(\beta + \alpha\right)} - 1.0\right)\right)}}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\beta}{2.0 + \left(\beta + \alpha\right)} - \left(\left(\frac{4.0}{\alpha \cdot \alpha} - \frac{2.0}{\alpha}\right) - \frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)}\right)}{2.0}\\
\end{array}double f(double alpha, double beta) {
double r4299339 = beta;
double r4299340 = alpha;
double r4299341 = r4299339 - r4299340;
double r4299342 = r4299340 + r4299339;
double r4299343 = 2.0;
double r4299344 = r4299342 + r4299343;
double r4299345 = r4299341 / r4299344;
double r4299346 = 1.0;
double r4299347 = r4299345 + r4299346;
double r4299348 = r4299347 / r4299343;
return r4299348;
}
double f(double alpha, double beta) {
double r4299349 = alpha;
double r4299350 = 6.404044802162421e+32;
bool r4299351 = r4299349 <= r4299350;
double r4299352 = beta;
double r4299353 = 2.0;
double r4299354 = r4299352 + r4299349;
double r4299355 = r4299353 + r4299354;
double r4299356 = r4299352 / r4299355;
double r4299357 = r4299349 / r4299355;
double r4299358 = 1.0;
double r4299359 = r4299357 - r4299358;
double r4299360 = r4299359 * r4299359;
double r4299361 = r4299359 * r4299360;
double r4299362 = cbrt(r4299361);
double r4299363 = r4299356 - r4299362;
double r4299364 = r4299363 / r4299353;
double r4299365 = 4.0;
double r4299366 = r4299349 * r4299349;
double r4299367 = r4299365 / r4299366;
double r4299368 = r4299353 / r4299349;
double r4299369 = r4299367 - r4299368;
double r4299370 = 8.0;
double r4299371 = r4299349 * r4299366;
double r4299372 = r4299370 / r4299371;
double r4299373 = r4299369 - r4299372;
double r4299374 = r4299356 - r4299373;
double r4299375 = r4299374 / r4299353;
double r4299376 = r4299351 ? r4299364 : r4299375;
return r4299376;
}



Bits error versus alpha



Bits error versus beta
Results
if alpha < 6.404044802162421e+32Initial program 1.6
rmApplied div-sub1.6
Applied associate-+l-1.5
rmApplied add-cbrt-cube1.6
if 6.404044802162421e+32 < alpha Initial program 50.6
rmApplied div-sub50.6
Applied associate-+l-49.0
rmApplied add-cbrt-cube49.0
Taylor expanded around inf 18.4
Simplified18.4
Final simplification6.5
herbie shell --seed 2019168
(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))