\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2.0 \cdot i}}{\left(\left(\alpha + \beta\right) + 2.0 \cdot i\right) + 2.0} + 1.0}{2.0}\begin{array}{l}
\mathbf{if}\;\alpha \le 6.642737521362061 \cdot 10^{+58}:\\
\;\;\;\;\frac{\sqrt[3]{\left(\left(\left(\alpha + \beta\right) \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + i \cdot 2.0}}{2.0 + \left(\left(\alpha + \beta\right) + i \cdot 2.0\right)} + 1.0\right) \cdot \frac{1.0 \cdot \left(1.0 \cdot 1.0\right) + \left(\left(\frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right) \cdot \left(\frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right)\right) \cdot \left(\frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right)}{\left(\frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right) \cdot \left(\frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right) + \left(1.0 - \frac{\beta - \alpha}{\left(2.0 + \left(\alpha + \beta\right)\right) + i \cdot 2.0} \cdot \frac{\alpha + \beta}{\left(\alpha + \beta\right) + i \cdot 2.0}\right) \cdot 1.0}\right) \cdot \log \left(e^{1.0} \cdot e^{\left(\alpha + \beta\right) \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + i \cdot 2.0}}{2.0 + \left(\left(\alpha + \beta\right) + i \cdot 2.0\right)}}\right)}}{2.0}\\
\mathbf{else}:\\
\;\;\;\;\frac{\left(\frac{2.0}{\alpha} - \frac{\frac{4.0}{\alpha}}{\alpha}\right) + \frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)}}{2.0}\\
\end{array}double f(double alpha, double beta, double i) {
double r4701689 = alpha;
double r4701690 = beta;
double r4701691 = r4701689 + r4701690;
double r4701692 = r4701690 - r4701689;
double r4701693 = r4701691 * r4701692;
double r4701694 = 2.0;
double r4701695 = i;
double r4701696 = r4701694 * r4701695;
double r4701697 = r4701691 + r4701696;
double r4701698 = r4701693 / r4701697;
double r4701699 = r4701697 + r4701694;
double r4701700 = r4701698 / r4701699;
double r4701701 = 1.0;
double r4701702 = r4701700 + r4701701;
double r4701703 = r4701702 / r4701694;
return r4701703;
}
double f(double alpha, double beta, double i) {
double r4701704 = alpha;
double r4701705 = 6.642737521362061e+58;
bool r4701706 = r4701704 <= r4701705;
double r4701707 = beta;
double r4701708 = r4701704 + r4701707;
double r4701709 = r4701707 - r4701704;
double r4701710 = i;
double r4701711 = 2.0;
double r4701712 = r4701710 * r4701711;
double r4701713 = r4701708 + r4701712;
double r4701714 = r4701709 / r4701713;
double r4701715 = r4701711 + r4701713;
double r4701716 = r4701714 / r4701715;
double r4701717 = r4701708 * r4701716;
double r4701718 = 1.0;
double r4701719 = r4701717 + r4701718;
double r4701720 = r4701718 * r4701718;
double r4701721 = r4701718 * r4701720;
double r4701722 = r4701711 + r4701708;
double r4701723 = r4701722 + r4701712;
double r4701724 = r4701709 / r4701723;
double r4701725 = r4701708 / r4701713;
double r4701726 = r4701724 * r4701725;
double r4701727 = r4701726 * r4701726;
double r4701728 = r4701727 * r4701726;
double r4701729 = r4701721 + r4701728;
double r4701730 = r4701718 - r4701726;
double r4701731 = r4701730 * r4701718;
double r4701732 = r4701727 + r4701731;
double r4701733 = r4701729 / r4701732;
double r4701734 = r4701719 * r4701733;
double r4701735 = exp(r4701718);
double r4701736 = exp(r4701717);
double r4701737 = r4701735 * r4701736;
double r4701738 = log(r4701737);
double r4701739 = r4701734 * r4701738;
double r4701740 = cbrt(r4701739);
double r4701741 = r4701740 / r4701711;
double r4701742 = r4701711 / r4701704;
double r4701743 = 4.0;
double r4701744 = r4701743 / r4701704;
double r4701745 = r4701744 / r4701704;
double r4701746 = r4701742 - r4701745;
double r4701747 = 8.0;
double r4701748 = r4701704 * r4701704;
double r4701749 = r4701704 * r4701748;
double r4701750 = r4701747 / r4701749;
double r4701751 = r4701746 + r4701750;
double r4701752 = r4701751 / r4701711;
double r4701753 = r4701706 ? r4701741 : r4701752;
return r4701753;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 6.642737521362061e+58Initial program 12.1
rmApplied *-un-lft-identity12.1
Applied *-un-lft-identity12.1
Applied times-frac1.4
Applied times-frac1.4
Simplified1.4
Simplified1.4
rmApplied add-cbrt-cube1.4
rmApplied add-log-exp1.4
Applied add-log-exp1.4
Applied sum-log1.4
rmApplied flip3-+1.4
Simplified1.4
Simplified1.4
if 6.642737521362061e+58 < alpha Initial program 56.1
Taylor expanded around inf 41.4
Simplified41.4
Final simplification12.2
herbie shell --seed 2019165
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/2"
:pre (and (> alpha -1.0) (> beta -1.0) (> i 0.0))
(/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) 2.0)) 1.0) 2.0))