\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 5.9215286727710296 \cdot 10^{222}:\\
\;\;\;\;\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}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r137806 = i;
double r137807 = alpha;
double r137808 = beta;
double r137809 = r137807 + r137808;
double r137810 = r137809 + r137806;
double r137811 = r137806 * r137810;
double r137812 = r137808 * r137807;
double r137813 = r137812 + r137811;
double r137814 = r137811 * r137813;
double r137815 = 2.0;
double r137816 = r137815 * r137806;
double r137817 = r137809 + r137816;
double r137818 = r137817 * r137817;
double r137819 = r137814 / r137818;
double r137820 = 1.0;
double r137821 = r137818 - r137820;
double r137822 = r137819 / r137821;
return r137822;
}
double f(double alpha, double beta, double i) {
double r137823 = alpha;
double r137824 = 5.92152867277103e+222;
bool r137825 = r137823 <= r137824;
double r137826 = i;
double r137827 = beta;
double r137828 = r137823 + r137827;
double r137829 = r137828 + r137826;
double r137830 = r137826 * r137829;
double r137831 = 2.0;
double r137832 = r137831 * r137826;
double r137833 = r137828 + r137832;
double r137834 = r137830 / r137833;
double r137835 = 1.0;
double r137836 = sqrt(r137835);
double r137837 = r137833 + r137836;
double r137838 = r137834 / r137837;
double r137839 = r137827 * r137823;
double r137840 = r137839 + r137830;
double r137841 = r137840 / r137833;
double r137842 = r137833 - r137836;
double r137843 = r137841 / r137842;
double r137844 = r137838 * r137843;
double r137845 = 0.0;
double r137846 = r137825 ? r137844 : r137845;
return r137846;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 5.92152867277103e+222Initial program 53.0
rmApplied add-sqr-sqrt53.0
Applied difference-of-squares53.0
Applied times-frac38.2
Applied times-frac35.9
if 5.92152867277103e+222 < alpha Initial program 64.0
Taylor expanded around inf 42.8
Final simplification36.5
herbie shell --seed 2020043
(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)))