\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.5412307314962603 \cdot 10^{80}:\\
\;\;\;\;\frac{\frac{1}{\frac{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}{\beta - \alpha}} \cdot \left(\frac{\alpha + \beta}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}} \cdot \frac{1}{\left(\alpha + \beta\right) + 2 \cdot i}\right) + 1}{2}\\
\mathbf{elif}\;\alpha \le 2.2620742697831166 \cdot 10^{119}:\\
\;\;\;\;\frac{\left(2 \cdot \frac{1}{\alpha} + 8 \cdot \frac{1}{{\alpha}^{3}}\right) - 4 \cdot \frac{1}{{\alpha}^{2}}}{2}\\
\mathbf{elif}\;\alpha \le 2.135954177821433 \cdot 10^{197}:\\
\;\;\;\;\frac{\left(\frac{\sqrt[3]{\alpha + \beta} \cdot \sqrt[3]{\alpha + \beta}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}} \cdot \frac{1}{\sqrt[3]{\left(\alpha + \beta\right) + 2 \cdot i} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2 \cdot i}}\right) \cdot \left(\frac{\sqrt[3]{\alpha + \beta}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}} \cdot \frac{\beta - \alpha}{\sqrt[3]{\left(\alpha + \beta\right) + 2 \cdot i}}\right) + 1}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(2 \cdot \frac{1}{\alpha} + 8 \cdot \frac{1}{{\alpha}^{3}}\right) - 4 \cdot \frac{1}{{\alpha}^{2}}}{2}\\
\end{array}double f(double alpha, double beta, double i) {
double r126844 = alpha;
double r126845 = beta;
double r126846 = r126844 + r126845;
double r126847 = r126845 - r126844;
double r126848 = r126846 * r126847;
double r126849 = 2.0;
double r126850 = i;
double r126851 = r126849 * r126850;
double r126852 = r126846 + r126851;
double r126853 = r126848 / r126852;
double r126854 = r126852 + r126849;
double r126855 = r126853 / r126854;
double r126856 = 1.0;
double r126857 = r126855 + r126856;
double r126858 = r126857 / r126849;
return r126858;
}
double f(double alpha, double beta, double i) {
double r126859 = alpha;
double r126860 = 1.5412307314962603e+80;
bool r126861 = r126859 <= r126860;
double r126862 = 1.0;
double r126863 = beta;
double r126864 = r126859 + r126863;
double r126865 = 2.0;
double r126866 = i;
double r126867 = r126865 * r126866;
double r126868 = r126864 + r126867;
double r126869 = r126868 + r126865;
double r126870 = sqrt(r126869);
double r126871 = r126863 - r126859;
double r126872 = r126870 / r126871;
double r126873 = r126862 / r126872;
double r126874 = r126864 / r126870;
double r126875 = r126862 / r126868;
double r126876 = r126874 * r126875;
double r126877 = r126873 * r126876;
double r126878 = 1.0;
double r126879 = r126877 + r126878;
double r126880 = r126879 / r126865;
double r126881 = 2.2620742697831166e+119;
bool r126882 = r126859 <= r126881;
double r126883 = r126862 / r126859;
double r126884 = r126865 * r126883;
double r126885 = 8.0;
double r126886 = 3.0;
double r126887 = pow(r126859, r126886);
double r126888 = r126862 / r126887;
double r126889 = r126885 * r126888;
double r126890 = r126884 + r126889;
double r126891 = 4.0;
double r126892 = 2.0;
double r126893 = pow(r126859, r126892);
double r126894 = r126862 / r126893;
double r126895 = r126891 * r126894;
double r126896 = r126890 - r126895;
double r126897 = r126896 / r126865;
double r126898 = 2.135954177821433e+197;
bool r126899 = r126859 <= r126898;
double r126900 = cbrt(r126864);
double r126901 = r126900 * r126900;
double r126902 = r126901 / r126870;
double r126903 = cbrt(r126868);
double r126904 = r126903 * r126903;
double r126905 = r126862 / r126904;
double r126906 = r126902 * r126905;
double r126907 = r126900 / r126870;
double r126908 = r126871 / r126903;
double r126909 = r126907 * r126908;
double r126910 = r126906 * r126909;
double r126911 = r126910 + r126878;
double r126912 = r126911 / r126865;
double r126913 = r126899 ? r126912 : r126897;
double r126914 = r126882 ? r126897 : r126913;
double r126915 = r126861 ? r126880 : r126914;
return r126915;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 1.5412307314962603e+80Initial program 14.1
rmApplied *-un-lft-identity14.1
Applied times-frac2.6
Applied associate-/l*2.6
rmApplied div-inv2.6
Applied add-sqr-sqrt2.6
Applied times-frac8.6
Applied *-un-lft-identity8.6
Applied *-un-lft-identity8.6
Applied times-frac8.6
Applied times-frac8.6
Simplified8.6
Simplified2.7
if 1.5412307314962603e+80 < alpha < 2.2620742697831166e+119 or 2.135954177821433e+197 < alpha Initial program 57.7
Taylor expanded around inf 42.0
if 2.2620742697831166e+119 < alpha < 2.135954177821433e+197Initial program 55.1
rmApplied *-un-lft-identity55.1
Applied times-frac38.2
Applied associate-/l*38.2
rmApplied add-cube-cbrt38.3
Applied *-un-lft-identity38.3
Applied times-frac38.2
Applied add-sqr-sqrt38.3
Applied times-frac40.0
Applied add-cube-cbrt40.1
Applied times-frac40.0
Simplified38.3
Simplified38.3
Final simplification12.0
herbie shell --seed 2020056
(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))