\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 3.24781343515455499 \cdot 10^{83}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\alpha + \beta, \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}, 1\right)\right)}^{3}}}{2}\\
\mathbf{elif}\;\alpha \le 2.2059526387587152 \cdot 10^{119}:\\
\;\;\;\;\frac{\mathsf{fma}\left(-4, \frac{1}{{\alpha}^{2}}, \mathsf{fma}\left(8, \frac{1}{{\alpha}^{3}}, \frac{2}{\alpha}\right)\right)}{2}\\
\mathbf{elif}\;\alpha \le 6.1120094823181713 \cdot 10^{200}:\\
\;\;\;\;\frac{\mathsf{fma}\left(\frac{\frac{\alpha + \beta}{1}}{\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{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt[3]{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}, 1\right)}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\mathsf{fma}\left(-4, \frac{1}{{\alpha}^{2}}, \mathsf{fma}\left(8, \frac{1}{{\alpha}^{3}}, \frac{2}{\alpha}\right)\right)}{2}\\
\end{array}double f(double alpha, double beta, double i) {
double r121002 = alpha;
double r121003 = beta;
double r121004 = r121002 + r121003;
double r121005 = r121003 - r121002;
double r121006 = r121004 * r121005;
double r121007 = 2.0;
double r121008 = i;
double r121009 = r121007 * r121008;
double r121010 = r121004 + r121009;
double r121011 = r121006 / r121010;
double r121012 = r121010 + r121007;
double r121013 = r121011 / r121012;
double r121014 = 1.0;
double r121015 = r121013 + r121014;
double r121016 = r121015 / r121007;
return r121016;
}
double f(double alpha, double beta, double i) {
double r121017 = alpha;
double r121018 = 3.247813435154555e+83;
bool r121019 = r121017 <= r121018;
double r121020 = beta;
double r121021 = r121017 + r121020;
double r121022 = r121020 - r121017;
double r121023 = 2.0;
double r121024 = i;
double r121025 = r121023 * r121024;
double r121026 = r121021 + r121025;
double r121027 = r121022 / r121026;
double r121028 = r121026 + r121023;
double r121029 = r121027 / r121028;
double r121030 = 1.0;
double r121031 = fma(r121021, r121029, r121030);
double r121032 = 3.0;
double r121033 = pow(r121031, r121032);
double r121034 = cbrt(r121033);
double r121035 = r121034 / r121023;
double r121036 = 2.205952638758715e+119;
bool r121037 = r121017 <= r121036;
double r121038 = 4.0;
double r121039 = -r121038;
double r121040 = 1.0;
double r121041 = 2.0;
double r121042 = pow(r121017, r121041);
double r121043 = r121040 / r121042;
double r121044 = 8.0;
double r121045 = pow(r121017, r121032);
double r121046 = r121040 / r121045;
double r121047 = r121023 / r121017;
double r121048 = fma(r121044, r121046, r121047);
double r121049 = fma(r121039, r121043, r121048);
double r121050 = r121049 / r121023;
double r121051 = 6.112009482318171e+200;
bool r121052 = r121017 <= r121051;
double r121053 = r121021 / r121040;
double r121054 = cbrt(r121028);
double r121055 = r121054 * r121054;
double r121056 = r121053 / r121055;
double r121057 = r121027 / r121054;
double r121058 = fma(r121056, r121057, r121030);
double r121059 = r121058 / r121023;
double r121060 = r121052 ? r121059 : r121050;
double r121061 = r121037 ? r121050 : r121060;
double r121062 = r121019 ? r121035 : r121061;
return r121062;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if alpha < 3.247813435154555e+83Initial program 14.2
rmApplied *-un-lft-identity14.2
Applied *-un-lft-identity14.2
Applied times-frac2.7
Applied times-frac2.7
Applied fma-def2.6
rmApplied add-cbrt-cube2.7
Simplified2.7
if 3.247813435154555e+83 < alpha < 2.205952638758715e+119 or 6.112009482318171e+200 < alpha Initial program 58.2
rmApplied *-un-lft-identity58.2
Applied *-un-lft-identity58.2
Applied times-frac45.1
Applied times-frac45.2
Applied fma-def46.0
Taylor expanded around inf 41.8
Simplified41.8
if 2.205952638758715e+119 < alpha < 6.112009482318171e+200Initial program 55.5
rmApplied add-cube-cbrt55.4
Applied *-un-lft-identity55.4
Applied times-frac38.7
Applied times-frac38.7
Applied fma-def38.7
Final simplification11.8
herbie shell --seed 2020056 +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))