\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}\;i \le 6.8138424641898455 \cdot 10^{143}:\\
\;\;\;\;\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 \frac{\frac{\beta \cdot \alpha + 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}}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{\frac{i}{\frac{\left(\alpha + \beta\right) + 2 \cdot i}{\left(\alpha + \beta\right) + i}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \left(0.25 \cdot \alpha + \left(0.5 \cdot i + 0.25 \cdot \beta\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\\
\end{array}double f(double alpha, double beta, double i) {
double r231602 = i;
double r231603 = alpha;
double r231604 = beta;
double r231605 = r231603 + r231604;
double r231606 = r231605 + r231602;
double r231607 = r231602 * r231606;
double r231608 = r231604 * r231603;
double r231609 = r231608 + r231607;
double r231610 = r231607 * r231609;
double r231611 = 2.0;
double r231612 = r231611 * r231602;
double r231613 = r231605 + r231612;
double r231614 = r231613 * r231613;
double r231615 = r231610 / r231614;
double r231616 = 1.0;
double r231617 = r231614 - r231616;
double r231618 = r231615 / r231617;
return r231618;
}
double f(double alpha, double beta, double i) {
double r231619 = i;
double r231620 = 6.8138424641898455e+143;
bool r231621 = r231619 <= r231620;
double r231622 = alpha;
double r231623 = beta;
double r231624 = r231622 + r231623;
double r231625 = r231624 + r231619;
double r231626 = r231619 * r231625;
double r231627 = 2.0;
double r231628 = r231627 * r231619;
double r231629 = r231624 + r231628;
double r231630 = r231626 / r231629;
double r231631 = 1.0;
double r231632 = sqrt(r231631);
double r231633 = r231629 + r231632;
double r231634 = r231630 / r231633;
double r231635 = r231623 * r231622;
double r231636 = r231635 + r231626;
double r231637 = r231636 / r231629;
double r231638 = r231629 - r231632;
double r231639 = r231637 / r231638;
double r231640 = r231634 * r231639;
double r231641 = r231629 / r231625;
double r231642 = r231619 / r231641;
double r231643 = r231642 / r231633;
double r231644 = 0.25;
double r231645 = r231644 * r231622;
double r231646 = 0.5;
double r231647 = r231646 * r231619;
double r231648 = r231644 * r231623;
double r231649 = r231647 + r231648;
double r231650 = r231645 + r231649;
double r231651 = r231643 * r231650;
double r231652 = r231651 / r231638;
double r231653 = r231621 ? r231640 : r231652;
return r231653;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if i < 6.8138424641898455e+143Initial program 42.8
rmApplied add-sqr-sqrt42.8
Applied difference-of-squares42.8
Applied times-frac16.2
Applied times-frac11.9
if 6.8138424641898455e+143 < i Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied times-frac61.0
Applied times-frac61.0
rmApplied associate-*r/61.0
rmApplied associate-/l*61.0
Taylor expanded around 0 10.2
Final simplification11.0
herbie shell --seed 2020056
(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)))