\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.376827553053855 \cdot 10^{+152}:\\
\;\;\;\;\frac{\frac{\frac{(\left(i + \left(\beta + \alpha\right)\right) \cdot i + \left(\beta \cdot \alpha\right))_*}{(2 \cdot i + \left(\beta + \alpha\right))_*}}{\sqrt{1.0} + (2 \cdot i + \left(\beta + \alpha\right))_*} \cdot \frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{(2 \cdot i + \left(\beta + \alpha\right))_*}}{(2 \cdot i + \left(\beta + \alpha\right))_* - \sqrt{1.0}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r18588720 = i;
double r18588721 = alpha;
double r18588722 = beta;
double r18588723 = r18588721 + r18588722;
double r18588724 = r18588723 + r18588720;
double r18588725 = r18588720 * r18588724;
double r18588726 = r18588722 * r18588721;
double r18588727 = r18588726 + r18588725;
double r18588728 = r18588725 * r18588727;
double r18588729 = 2.0;
double r18588730 = r18588729 * r18588720;
double r18588731 = r18588723 + r18588730;
double r18588732 = r18588731 * r18588731;
double r18588733 = r18588728 / r18588732;
double r18588734 = 1.0;
double r18588735 = r18588732 - r18588734;
double r18588736 = r18588733 / r18588735;
return r18588736;
}
double f(double alpha, double beta, double i) {
double r18588737 = alpha;
double r18588738 = 6.376827553053855e+152;
bool r18588739 = r18588737 <= r18588738;
double r18588740 = i;
double r18588741 = beta;
double r18588742 = r18588741 + r18588737;
double r18588743 = r18588740 + r18588742;
double r18588744 = r18588741 * r18588737;
double r18588745 = fma(r18588743, r18588740, r18588744);
double r18588746 = 2.0;
double r18588747 = fma(r18588746, r18588740, r18588742);
double r18588748 = r18588745 / r18588747;
double r18588749 = 1.0;
double r18588750 = sqrt(r18588749);
double r18588751 = r18588750 + r18588747;
double r18588752 = r18588748 / r18588751;
double r18588753 = r18588740 * r18588743;
double r18588754 = r18588753 / r18588747;
double r18588755 = r18588752 * r18588754;
double r18588756 = r18588747 - r18588750;
double r18588757 = r18588755 / r18588756;
double r18588758 = 0.0;
double r18588759 = r18588739 ? r18588757 : r18588758;
return r18588759;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if alpha < 6.376827553053855e+152Initial program 50.7
Simplified50.7
rmApplied add-sqr-sqrt50.7
Applied difference-of-squares50.7
Applied times-frac35.6
Applied times-frac34.4
rmApplied associate-*r/34.4
if 6.376827553053855e+152 < alpha Initial program 62.5
Simplified62.5
rmApplied add-sqr-sqrt62.5
Applied difference-of-squares62.5
Applied times-frac56.0
Applied times-frac49.2
Taylor expanded around inf 47.7
Final simplification36.6
herbie shell --seed 2019112 +o rules:numerics
(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)))