\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 4.441712688807933701219879934380300457676 \cdot 10^{210}:\\
\;\;\;\;\frac{\frac{\left(\frac{i}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\left(\alpha + \beta\right) + i}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\right) \cdot \sqrt{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\frac{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}{\sqrt{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}}}{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r172581 = i;
double r172582 = alpha;
double r172583 = beta;
double r172584 = r172582 + r172583;
double r172585 = r172584 + r172581;
double r172586 = r172581 * r172585;
double r172587 = r172583 * r172582;
double r172588 = r172587 + r172586;
double r172589 = r172586 * r172588;
double r172590 = 2.0;
double r172591 = r172590 * r172581;
double r172592 = r172584 + r172591;
double r172593 = r172592 * r172592;
double r172594 = r172589 / r172593;
double r172595 = 1.0;
double r172596 = r172593 - r172595;
double r172597 = r172594 / r172596;
return r172597;
}
double f(double alpha, double beta, double i) {
double r172598 = alpha;
double r172599 = 4.4417126888079337e+210;
bool r172600 = r172598 <= r172599;
double r172601 = i;
double r172602 = beta;
double r172603 = r172598 + r172602;
double r172604 = 2.0;
double r172605 = r172604 * r172601;
double r172606 = r172603 + r172605;
double r172607 = 1.0;
double r172608 = sqrt(r172607);
double r172609 = r172606 + r172608;
double r172610 = r172601 / r172609;
double r172611 = r172603 + r172601;
double r172612 = r172606 - r172608;
double r172613 = r172611 / r172612;
double r172614 = r172610 * r172613;
double r172615 = r172601 * r172611;
double r172616 = fma(r172602, r172598, r172615);
double r172617 = sqrt(r172616);
double r172618 = r172614 * r172617;
double r172619 = fma(r172601, r172604, r172603);
double r172620 = r172619 / r172617;
double r172621 = r172618 / r172620;
double r172622 = r172621 / r172619;
double r172623 = 0.0;
double r172624 = r172600 ? r172622 : r172623;
return r172624;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if alpha < 4.4417126888079337e+210Initial program 53.4
Simplified52.8
rmApplied associate-/l*48.6
rmApplied *-un-lft-identity48.6
Applied add-sqr-sqrt48.6
Applied times-frac48.6
Applied times-frac39.5
Applied associate-/r*38.2
Simplified38.2
rmApplied add-sqr-sqrt38.2
Applied difference-of-squares38.2
Applied times-frac35.8
rmApplied associate-/r/35.7
Applied associate-/r*35.7
if 4.4417126888079337e+210 < alpha Initial program 64.0
Simplified56.0
Taylor expanded around inf 43.2
Final simplification36.5
herbie shell --seed 2019353 +o rules:numerics
(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)))