\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.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 6.630518678732338 \cdot 10^{+208}:\\
\;\;\;\;\frac{\frac{i \cdot \left(i + \left(\alpha + \beta\right)\right) + \beta \cdot \alpha}{\left(\alpha + \beta\right) + 2 \cdot i} \cdot \frac{\frac{i \cdot \left(i + \left(\alpha + \beta\right)\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{1.0} + \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1.0}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r5336465 = i;
double r5336466 = alpha;
double r5336467 = beta;
double r5336468 = r5336466 + r5336467;
double r5336469 = r5336468 + r5336465;
double r5336470 = r5336465 * r5336469;
double r5336471 = r5336467 * r5336466;
double r5336472 = r5336471 + r5336470;
double r5336473 = r5336470 * r5336472;
double r5336474 = 2.0;
double r5336475 = r5336474 * r5336465;
double r5336476 = r5336468 + r5336475;
double r5336477 = r5336476 * r5336476;
double r5336478 = r5336473 / r5336477;
double r5336479 = 1.0;
double r5336480 = r5336477 - r5336479;
double r5336481 = r5336478 / r5336480;
return r5336481;
}
double f(double alpha, double beta, double i) {
double r5336482 = alpha;
double r5336483 = 6.630518678732338e+208;
bool r5336484 = r5336482 <= r5336483;
double r5336485 = i;
double r5336486 = beta;
double r5336487 = r5336482 + r5336486;
double r5336488 = r5336485 + r5336487;
double r5336489 = r5336485 * r5336488;
double r5336490 = r5336486 * r5336482;
double r5336491 = r5336489 + r5336490;
double r5336492 = 2.0;
double r5336493 = r5336492 * r5336485;
double r5336494 = r5336487 + r5336493;
double r5336495 = r5336491 / r5336494;
double r5336496 = r5336489 / r5336494;
double r5336497 = 1.0;
double r5336498 = sqrt(r5336497);
double r5336499 = r5336498 + r5336494;
double r5336500 = r5336496 / r5336499;
double r5336501 = r5336495 * r5336500;
double r5336502 = r5336494 - r5336498;
double r5336503 = r5336501 / r5336502;
double r5336504 = 0.0;
double r5336505 = r5336484 ? r5336503 : r5336504;
return r5336505;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 6.630518678732338e+208Initial program 51.0
rmApplied add-sqr-sqrt51.0
Applied difference-of-squares51.0
Applied times-frac36.2
Applied times-frac33.9
rmApplied associate-*r/33.9
if 6.630518678732338e+208 < alpha Initial program 62.6
rmApplied add-sqr-sqrt62.6
Applied difference-of-squares62.6
Applied times-frac56.4
Applied times-frac55.0
Taylor expanded around -inf 44.5
Final simplification35.1
herbie shell --seed 2019134
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1) (> beta -1) (> i 1))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1.0)))