\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}\begin{array}{l}
\mathbf{if}\;\beta \le 4.524890541013963810292220327990753487478 \cdot 10^{196}:\\
\;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i}}{\left(\left(\beta + \alpha\right) + 2 \cdot i\right) - \sqrt{1}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r4912439 = i;
double r4912440 = alpha;
double r4912441 = beta;
double r4912442 = r4912440 + r4912441;
double r4912443 = r4912442 + r4912439;
double r4912444 = r4912439 * r4912443;
double r4912445 = r4912441 * r4912440;
double r4912446 = r4912445 + r4912444;
double r4912447 = r4912444 * r4912446;
double r4912448 = 2.0;
double r4912449 = r4912448 * r4912439;
double r4912450 = r4912442 + r4912449;
double r4912451 = r4912450 * r4912450;
double r4912452 = r4912447 / r4912451;
double r4912453 = 1.0;
double r4912454 = r4912451 - r4912453;
double r4912455 = r4912452 / r4912454;
return r4912455;
}
double f(double alpha, double beta, double i) {
double r4912456 = beta;
double r4912457 = 4.524890541013964e+196;
bool r4912458 = r4912456 <= r4912457;
double r4912459 = i;
double r4912460 = alpha;
double r4912461 = r4912456 + r4912460;
double r4912462 = r4912459 + r4912461;
double r4912463 = r4912459 * r4912462;
double r4912464 = 2.0;
double r4912465 = r4912464 * r4912459;
double r4912466 = r4912461 + r4912465;
double r4912467 = r4912463 / r4912466;
double r4912468 = 1.0;
double r4912469 = sqrt(r4912468);
double r4912470 = r4912469 + r4912466;
double r4912471 = r4912467 / r4912470;
double r4912472 = r4912460 * r4912456;
double r4912473 = r4912463 + r4912472;
double r4912474 = r4912473 / r4912466;
double r4912475 = r4912466 - r4912469;
double r4912476 = r4912474 / r4912475;
double r4912477 = r4912471 * r4912476;
double r4912478 = 0.0;
double r4912479 = r4912458 ? r4912477 : r4912478;
return r4912479;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 4.524890541013964e+196Initial program 53.0
rmApplied add-sqr-sqrt53.0
Applied difference-of-squares53.0
Applied times-frac37.6
Applied times-frac35.6
if 4.524890541013964e+196 < beta Initial program 64.0
Taylor expanded around inf 43.6
Final simplification36.6
herbie shell --seed 2019172
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1.0) (> beta -1.0) (> i 1.0))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i)))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0)))