\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 1.2148514849628163 \cdot 10^{188}:\\
\;\;\;\;\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \left(\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot i}} \cdot \frac{\frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot i}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\right)\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r117507 = i;
double r117508 = alpha;
double r117509 = beta;
double r117510 = r117508 + r117509;
double r117511 = r117510 + r117507;
double r117512 = r117507 * r117511;
double r117513 = r117509 * r117508;
double r117514 = r117513 + r117512;
double r117515 = r117512 * r117514;
double r117516 = 2.0;
double r117517 = r117516 * r117507;
double r117518 = r117510 + r117517;
double r117519 = r117518 * r117518;
double r117520 = r117515 / r117519;
double r117521 = 1.0;
double r117522 = r117519 - r117521;
double r117523 = r117520 / r117522;
return r117523;
}
double f(double alpha, double beta, double i) {
double r117524 = beta;
double r117525 = 1.2148514849628163e+188;
bool r117526 = r117524 <= r117525;
double r117527 = i;
double r117528 = alpha;
double r117529 = r117528 + r117524;
double r117530 = r117529 + r117527;
double r117531 = r117527 * r117530;
double r117532 = 2.0;
double r117533 = r117532 * r117527;
double r117534 = r117529 + r117533;
double r117535 = r117531 / r117534;
double r117536 = 1.0;
double r117537 = sqrt(r117536);
double r117538 = r117534 + r117537;
double r117539 = r117535 / r117538;
double r117540 = 1.0;
double r117541 = sqrt(r117534);
double r117542 = r117540 / r117541;
double r117543 = r117524 * r117528;
double r117544 = r117543 + r117531;
double r117545 = r117544 / r117541;
double r117546 = r117534 - r117537;
double r117547 = r117545 / r117546;
double r117548 = r117542 * r117547;
double r117549 = r117539 * r117548;
double r117550 = 0.0;
double r117551 = r117526 ? r117549 : r117550;
return r117551;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 1.2148514849628163e+188Initial program 52.5
rmApplied add-sqr-sqrt52.5
Applied difference-of-squares52.5
Applied times-frac37.0
Applied times-frac35.0
rmApplied *-un-lft-identity35.0
Applied add-sqr-sqrt35.2
Applied *-un-lft-identity35.2
Applied times-frac35.2
Applied times-frac35.2
Simplified35.2
if 1.2148514849628163e+188 < beta Initial program 64.0
Taylor expanded around inf 46.7
Final simplification36.7
herbie shell --seed 2020100
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:precision binary64
:pre (and (> alpha -1) (> beta -1) (> i 1))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i)))) (- (* (+ (+ alpha beta) (* 2 i)) (+ (+ alpha beta) (* 2 i))) 1)))