\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}\;\beta \le 1.188056215160572263971838545139810525665 \cdot 10^{214}:\\
\;\;\;\;\frac{\sqrt{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}}} \cdot \left(\frac{\sqrt{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}}{\sqrt{\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}}\right)\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r111735 = i;
double r111736 = alpha;
double r111737 = beta;
double r111738 = r111736 + r111737;
double r111739 = r111738 + r111735;
double r111740 = r111735 * r111739;
double r111741 = r111737 * r111736;
double r111742 = r111741 + r111740;
double r111743 = r111740 * r111742;
double r111744 = 2.0;
double r111745 = r111744 * r111735;
double r111746 = r111738 + r111745;
double r111747 = r111746 * r111746;
double r111748 = r111743 / r111747;
double r111749 = 1.0;
double r111750 = r111747 - r111749;
double r111751 = r111748 / r111750;
return r111751;
}
double f(double alpha, double beta, double i) {
double r111752 = beta;
double r111753 = 1.1880562151605723e+214;
bool r111754 = r111752 <= r111753;
double r111755 = i;
double r111756 = alpha;
double r111757 = r111756 + r111752;
double r111758 = r111757 + r111755;
double r111759 = r111755 * r111758;
double r111760 = 2.0;
double r111761 = r111760 * r111755;
double r111762 = r111757 + r111761;
double r111763 = r111759 / r111762;
double r111764 = sqrt(r111763);
double r111765 = 1.0;
double r111766 = sqrt(r111765);
double r111767 = r111762 + r111766;
double r111768 = sqrt(r111767);
double r111769 = r111764 / r111768;
double r111770 = r111752 * r111756;
double r111771 = r111770 + r111759;
double r111772 = r111771 / r111762;
double r111773 = r111762 - r111766;
double r111774 = r111772 / r111773;
double r111775 = r111769 * r111774;
double r111776 = r111769 * r111775;
double r111777 = 0.0;
double r111778 = r111754 ? r111776 : r111777;
return r111778;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 1.1880562151605723e+214Initial program 52.8
rmApplied add-sqr-sqrt52.8
Applied difference-of-squares52.8
Applied times-frac38.1
Applied times-frac35.7
rmApplied add-sqr-sqrt35.9
Applied add-sqr-sqrt35.8
Applied times-frac35.8
Applied associate-*l*35.8
if 1.1880562151605723e+214 < beta Initial program 64.0
Taylor expanded around inf 42.1
Final simplification36.4
herbie shell --seed 2019212
(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)))