\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\begin{array}{l}
\mathbf{if}\;\alpha \le 1.5371929371909745 \cdot 10^{209}:\\
\;\;\;\;\frac{\mathsf{fma}\left(\frac{\frac{\beta - \alpha}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}}{\sqrt{\sqrt[3]{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} \cdot \sqrt[3]{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}}, \frac{\frac{\alpha + \beta}{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}}{\sqrt{\sqrt[3]{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}}, 1\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}} - 4 \cdot \frac{1}{{\alpha}^{2}}\right)}{2}\\
\end{array}double f(double alpha, double beta, double i) {
double r143905 = alpha;
double r143906 = beta;
double r143907 = r143905 + r143906;
double r143908 = r143906 - r143905;
double r143909 = r143907 * r143908;
double r143910 = 2.0;
double r143911 = i;
double r143912 = r143910 * r143911;
double r143913 = r143907 + r143912;
double r143914 = r143909 / r143913;
double r143915 = r143913 + r143910;
double r143916 = r143914 / r143915;
double r143917 = 1.0;
double r143918 = r143916 + r143917;
double r143919 = r143918 / r143910;
return r143919;
}
double f(double alpha, double beta, double i) {
double r143920 = alpha;
double r143921 = 1.5371929371909745e+209;
bool r143922 = r143920 <= r143921;
double r143923 = beta;
double r143924 = r143923 - r143920;
double r143925 = r143920 + r143923;
double r143926 = 2.0;
double r143927 = i;
double r143928 = r143926 * r143927;
double r143929 = r143925 + r143928;
double r143930 = r143929 + r143926;
double r143931 = sqrt(r143930);
double r143932 = r143924 / r143931;
double r143933 = cbrt(r143930);
double r143934 = r143933 * r143933;
double r143935 = sqrt(r143934);
double r143936 = r143932 / r143935;
double r143937 = fma(r143927, r143926, r143925);
double r143938 = r143925 / r143937;
double r143939 = sqrt(r143933);
double r143940 = r143938 / r143939;
double r143941 = 1.0;
double r143942 = fma(r143936, r143940, r143941);
double r143943 = r143942 / r143926;
double r143944 = 1.0;
double r143945 = r143944 / r143920;
double r143946 = 8.0;
double r143947 = 3.0;
double r143948 = pow(r143920, r143947);
double r143949 = r143944 / r143948;
double r143950 = r143946 * r143949;
double r143951 = 4.0;
double r143952 = 2.0;
double r143953 = pow(r143920, r143952);
double r143954 = r143944 / r143953;
double r143955 = r143951 * r143954;
double r143956 = r143950 - r143955;
double r143957 = fma(r143926, r143945, r143956);
double r143958 = r143957 / r143926;
double r143959 = r143922 ? r143943 : r143958;
return r143959;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if alpha < 1.5371929371909745e+209Initial program 18.9
rmApplied add-sqr-sqrt18.9
Applied associate-/r*18.9
Simplified7.4
rmApplied add-cube-cbrt7.5
Applied sqrt-prod7.5
Applied times-frac7.5
Applied fma-def7.5
if 1.5371929371909745e+209 < alpha Initial program 64.0
Taylor expanded around inf 40.5
Simplified40.5
Final simplification11.0
herbie shell --seed 2020046 +o rules:numerics
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:precision binary64
:pre (and (> alpha -1) (> beta -1) (> i 0.0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2)) 1) 2))