\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 8.272018169352953388394985640277233981571 \cdot 10^{256}:\\
\;\;\;\;\frac{\log \left(e^{\frac{\alpha + \beta}{\frac{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2}{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}} + 1}\right)}{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 r145719 = alpha;
double r145720 = beta;
double r145721 = r145719 + r145720;
double r145722 = r145720 - r145719;
double r145723 = r145721 * r145722;
double r145724 = 2.0;
double r145725 = i;
double r145726 = r145724 * r145725;
double r145727 = r145721 + r145726;
double r145728 = r145723 / r145727;
double r145729 = r145727 + r145724;
double r145730 = r145728 / r145729;
double r145731 = 1.0;
double r145732 = r145730 + r145731;
double r145733 = r145732 / r145724;
return r145733;
}
double f(double alpha, double beta, double i) {
double r145734 = alpha;
double r145735 = 8.272018169352953e+256;
bool r145736 = r145734 <= r145735;
double r145737 = beta;
double r145738 = r145734 + r145737;
double r145739 = 2.0;
double r145740 = i;
double r145741 = r145739 * r145740;
double r145742 = r145738 + r145741;
double r145743 = r145742 + r145739;
double r145744 = r145737 - r145734;
double r145745 = r145744 / r145742;
double r145746 = r145743 / r145745;
double r145747 = r145738 / r145746;
double r145748 = 1.0;
double r145749 = r145747 + r145748;
double r145750 = exp(r145749);
double r145751 = log(r145750);
double r145752 = r145751 / r145739;
double r145753 = 1.0;
double r145754 = r145753 / r145734;
double r145755 = r145739 * r145754;
double r145756 = 8.0;
double r145757 = 3.0;
double r145758 = pow(r145734, r145757);
double r145759 = r145753 / r145758;
double r145760 = r145756 * r145759;
double r145761 = r145755 + r145760;
double r145762 = 4.0;
double r145763 = 2.0;
double r145764 = pow(r145734, r145763);
double r145765 = r145753 / r145764;
double r145766 = r145762 * r145765;
double r145767 = r145761 - r145766;
double r145768 = r145767 / r145739;
double r145769 = r145736 ? r145752 : r145768;
return r145769;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if alpha < 8.272018169352953e+256Initial program 21.3
rmApplied *-un-lft-identity21.3
Applied times-frac9.4
Applied associate-/l*9.4
rmApplied add-log-exp9.4
Applied add-log-exp9.4
Applied sum-log9.4
Simplified9.4
if 8.272018169352953e+256 < alpha Initial program 64.0
rmApplied *-un-lft-identity64.0
Applied times-frac53.4
Applied associate-/l*53.4
Taylor expanded around inf 43.2
Final simplification11.3
herbie shell --seed 2019209
(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))