\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}\;\alpha \le 2.161086363824118319426521696555596053859 \cdot 10^{199}:\\
\;\;\;\;\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \left(\frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i} \cdot \frac{1}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\right)\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r107516 = i;
double r107517 = alpha;
double r107518 = beta;
double r107519 = r107517 + r107518;
double r107520 = r107519 + r107516;
double r107521 = r107516 * r107520;
double r107522 = r107518 * r107517;
double r107523 = r107522 + r107521;
double r107524 = r107521 * r107523;
double r107525 = 2.0;
double r107526 = r107525 * r107516;
double r107527 = r107519 + r107526;
double r107528 = r107527 * r107527;
double r107529 = r107524 / r107528;
double r107530 = 1.0;
double r107531 = r107528 - r107530;
double r107532 = r107529 / r107531;
return r107532;
}
double f(double alpha, double beta, double i) {
double r107533 = alpha;
double r107534 = 2.1610863638241183e+199;
bool r107535 = r107533 <= r107534;
double r107536 = i;
double r107537 = beta;
double r107538 = r107533 + r107537;
double r107539 = r107538 + r107536;
double r107540 = r107536 * r107539;
double r107541 = 2.0;
double r107542 = r107541 * r107536;
double r107543 = r107538 + r107542;
double r107544 = r107540 / r107543;
double r107545 = 1.0;
double r107546 = sqrt(r107545);
double r107547 = r107543 + r107546;
double r107548 = r107544 / r107547;
double r107549 = r107537 * r107533;
double r107550 = r107549 + r107540;
double r107551 = r107550 / r107543;
double r107552 = 1.0;
double r107553 = r107543 - r107546;
double r107554 = r107552 / r107553;
double r107555 = r107551 * r107554;
double r107556 = r107548 * r107555;
double r107557 = 0.0;
double r107558 = r107535 ? r107556 : r107557;
return r107558;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 2.1610863638241183e+199Initial program 52.5
rmApplied add-sqr-sqrt52.5
Applied difference-of-squares52.5
Applied times-frac37.1
Applied times-frac35.0
rmApplied div-inv35.0
if 2.1610863638241183e+199 < alpha Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied times-frac56.1
Applied times-frac54.6
rmApplied div-inv54.6
Taylor expanded around inf 43.3
Final simplification36.0
herbie shell --seed 2019322
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:precision binary64
: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)))