\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.58003310586896986495188632827235655524 \cdot 10^{209}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\left(\alpha + \beta\right) \cdot \left(\frac{1}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}}\right) + 1\right)}^{3}}}{2}\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(\frac{8}{{\alpha}^{3}} + \frac{2}{\alpha}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\
\end{array}double f(double alpha, double beta, double i) {
double r87276 = alpha;
double r87277 = beta;
double r87278 = r87276 + r87277;
double r87279 = r87277 - r87276;
double r87280 = r87278 * r87279;
double r87281 = 2.0;
double r87282 = i;
double r87283 = r87281 * r87282;
double r87284 = r87278 + r87283;
double r87285 = r87280 / r87284;
double r87286 = r87284 + r87281;
double r87287 = r87285 / r87286;
double r87288 = 1.0;
double r87289 = r87287 + r87288;
double r87290 = r87289 / r87281;
return r87290;
}
double f(double alpha, double beta, double i) {
double r87291 = alpha;
double r87292 = 1.5800331058689699e+209;
bool r87293 = r87291 <= r87292;
double r87294 = beta;
double r87295 = r87291 + r87294;
double r87296 = 1.0;
double r87297 = 2.0;
double r87298 = i;
double r87299 = r87297 * r87298;
double r87300 = r87295 + r87299;
double r87301 = r87300 + r87297;
double r87302 = sqrt(r87301);
double r87303 = r87296 / r87302;
double r87304 = r87294 - r87291;
double r87305 = r87304 / r87300;
double r87306 = r87305 / r87302;
double r87307 = r87303 * r87306;
double r87308 = r87295 * r87307;
double r87309 = 1.0;
double r87310 = r87308 + r87309;
double r87311 = 3.0;
double r87312 = pow(r87310, r87311);
double r87313 = cbrt(r87312);
double r87314 = r87313 / r87297;
double r87315 = 8.0;
double r87316 = pow(r87291, r87311);
double r87317 = r87315 / r87316;
double r87318 = r87297 / r87291;
double r87319 = r87317 + r87318;
double r87320 = 4.0;
double r87321 = r87291 * r87291;
double r87322 = r87320 / r87321;
double r87323 = r87319 - r87322;
double r87324 = r87323 / r87297;
double r87325 = r87293 ? r87314 : r87324;
return r87325;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 1.5800331058689699e+209Initial program 19.7
rmApplied *-un-lft-identity19.7
Applied *-un-lft-identity19.7
Applied times-frac7.5
Applied times-frac7.5
Simplified7.5
rmApplied add-cbrt-cube7.5
Simplified7.5
rmApplied add-sqr-sqrt7.5
Applied *-un-lft-identity7.5
Applied *-un-lft-identity7.5
Applied times-frac7.5
Applied times-frac7.5
Simplified7.5
if 1.5800331058689699e+209 < alpha Initial program 64.0
Taylor expanded around inf 43.3
Simplified43.3
Final simplification11.3
herbie shell --seed 2019303
(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))