\frac{\frac{\left(i \cdot \left(\left(\alpha + \beta\right) + i\right)\right) \cdot \left(\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}\begin{array}{l}
\mathbf{if}\;\beta \le 5.188945744706776056846709445192721671049 \cdot 10^{218}:\\
\;\;\;\;\frac{\left(\beta + \alpha\right) \cdot 0.25 + 0.5 \cdot i}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}} \cdot \sqrt[3]{\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \left(\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)}\right)}\\
\mathbf{else}:\\
\;\;\;\;\frac{\frac{i}{\frac{\left(\beta + \alpha\right) + i \cdot 2}{i + \left(\beta + \alpha\right)}}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + i \cdot 2\right)} \cdot \frac{i}{\left(\left(\beta + \alpha\right) + i \cdot 2\right) - \sqrt{1}}\\
\end{array}double f(double alpha, double beta, double i) {
double r5365660 = i;
double r5365661 = alpha;
double r5365662 = beta;
double r5365663 = r5365661 + r5365662;
double r5365664 = r5365663 + r5365660;
double r5365665 = r5365660 * r5365664;
double r5365666 = r5365662 * r5365661;
double r5365667 = r5365666 + r5365665;
double r5365668 = r5365665 * r5365667;
double r5365669 = 2.0;
double r5365670 = r5365669 * r5365660;
double r5365671 = r5365663 + r5365670;
double r5365672 = r5365671 * r5365671;
double r5365673 = r5365668 / r5365672;
double r5365674 = 1.0;
double r5365675 = r5365672 - r5365674;
double r5365676 = r5365673 / r5365675;
return r5365676;
}
double f(double alpha, double beta, double i) {
double r5365677 = beta;
double r5365678 = 5.188945744706776e+218;
bool r5365679 = r5365677 <= r5365678;
double r5365680 = alpha;
double r5365681 = r5365677 + r5365680;
double r5365682 = 0.25;
double r5365683 = r5365681 * r5365682;
double r5365684 = 0.5;
double r5365685 = i;
double r5365686 = r5365684 * r5365685;
double r5365687 = r5365683 + r5365686;
double r5365688 = 2.0;
double r5365689 = r5365685 * r5365688;
double r5365690 = r5365681 + r5365689;
double r5365691 = 1.0;
double r5365692 = sqrt(r5365691);
double r5365693 = r5365690 - r5365692;
double r5365694 = r5365687 / r5365693;
double r5365695 = r5365685 + r5365681;
double r5365696 = r5365690 / r5365695;
double r5365697 = r5365685 / r5365696;
double r5365698 = r5365692 + r5365690;
double r5365699 = r5365697 / r5365698;
double r5365700 = r5365699 * r5365699;
double r5365701 = r5365699 * r5365700;
double r5365702 = cbrt(r5365701);
double r5365703 = r5365694 * r5365702;
double r5365704 = r5365685 / r5365693;
double r5365705 = r5365699 * r5365704;
double r5365706 = r5365679 ? r5365703 : r5365705;
return r5365706;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 5.188945744706776e+218Initial program 53.7
rmApplied add-sqr-sqrt53.7
Applied difference-of-squares53.7
Applied times-frac38.6
Applied times-frac36.2
rmApplied associate-/l*36.2
Taylor expanded around 0 14.4
Simplified14.4
rmApplied add-cbrt-cube12.6
if 5.188945744706776e+218 < beta Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied times-frac58.1
Applied times-frac57.7
rmApplied associate-/l*57.7
Taylor expanded around inf 13.8
Final simplification12.8
herbie shell --seed 2019171
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1.0) (> beta -1.0) (> i 1.0))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i)))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0)))