\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 6.089121605647622 \cdot 10^{+121}:\\
\;\;\;\;\frac{\sqrt[3]{\left(\left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\beta + \alpha\right) + 1.0\right) \cdot \left(\frac{1}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i} \cdot \left(\beta + \alpha\right)\right) + 1.0\right)\right) \cdot \left(\frac{1}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i} \cdot \left(\beta + \alpha\right)\right) + 1.0\right)}}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{\frac{8.0}{\alpha} - 4.0}{\alpha}}{\alpha} + \frac{2.0}{\alpha}}{2.0}\\
\end{array}double f(double alpha, double beta, double i) {
double r16243439 = alpha;
double r16243440 = beta;
double r16243441 = r16243439 + r16243440;
double r16243442 = r16243440 - r16243439;
double r16243443 = r16243441 * r16243442;
double r16243444 = 2.0;
double r16243445 = i;
double r16243446 = r16243444 * r16243445;
double r16243447 = r16243441 + r16243446;
double r16243448 = r16243443 / r16243447;
double r16243449 = 2.0;
double r16243450 = r16243447 + r16243449;
double r16243451 = r16243448 / r16243450;
double r16243452 = 1.0;
double r16243453 = r16243451 + r16243452;
double r16243454 = r16243453 / r16243449;
return r16243454;
}
double f(double alpha, double beta, double i) {
double r16243455 = alpha;
double r16243456 = 6.089121605647622e+121;
bool r16243457 = r16243455 <= r16243456;
double r16243458 = beta;
double r16243459 = r16243458 - r16243455;
double r16243460 = r16243458 + r16243455;
double r16243461 = 2.0;
double r16243462 = i;
double r16243463 = r16243461 * r16243462;
double r16243464 = r16243460 + r16243463;
double r16243465 = r16243459 / r16243464;
double r16243466 = 2.0;
double r16243467 = r16243466 + r16243464;
double r16243468 = r16243465 / r16243467;
double r16243469 = r16243468 * r16243460;
double r16243470 = 1.0;
double r16243471 = r16243469 + r16243470;
double r16243472 = 1.0;
double r16243473 = r16243472 / r16243467;
double r16243474 = r16243465 * r16243460;
double r16243475 = r16243473 * r16243474;
double r16243476 = r16243475 + r16243470;
double r16243477 = r16243471 * r16243476;
double r16243478 = r16243477 * r16243476;
double r16243479 = cbrt(r16243478);
double r16243480 = r16243479 / r16243466;
double r16243481 = 8.0;
double r16243482 = r16243481 / r16243455;
double r16243483 = 4.0;
double r16243484 = r16243482 - r16243483;
double r16243485 = r16243484 / r16243455;
double r16243486 = r16243485 / r16243455;
double r16243487 = r16243466 / r16243455;
double r16243488 = r16243486 + r16243487;
double r16243489 = r16243488 / r16243466;
double r16243490 = r16243457 ? r16243480 : r16243489;
return r16243490;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 6.089121605647622e+121Initial program 14.9
rmApplied *-un-lft-identity14.9
Applied *-un-lft-identity14.9
Applied times-frac4.0
Applied times-frac4.0
Simplified4.0
rmApplied add-cbrt-cube4.0
rmApplied div-inv4.0
Applied associate-*r*4.0
rmApplied div-inv4.0
Applied associate-*r*4.0
if 6.089121605647622e+121 < alpha Initial program 59.8
Taylor expanded around -inf 42.2
Simplified42.2
Final simplification11.6
herbie shell --seed 2019121
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1) (> beta -1) (> i 0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))