\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}\;\alpha \le 5.5207308283307356 \cdot 10^{195}:\\
\;\;\;\;\frac{\frac{i}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\left(\alpha + \beta\right) + i}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}}{\frac{\frac{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}{\frac{\sqrt{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}}}{\sqrt{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r201552 = i;
double r201553 = alpha;
double r201554 = beta;
double r201555 = r201553 + r201554;
double r201556 = r201555 + r201552;
double r201557 = r201552 * r201556;
double r201558 = r201554 * r201553;
double r201559 = r201558 + r201557;
double r201560 = r201557 * r201559;
double r201561 = 2.0;
double r201562 = r201561 * r201552;
double r201563 = r201555 + r201562;
double r201564 = r201563 * r201563;
double r201565 = r201560 / r201564;
double r201566 = 1.0;
double r201567 = r201564 - r201566;
double r201568 = r201565 / r201567;
return r201568;
}
double f(double alpha, double beta, double i) {
double r201569 = alpha;
double r201570 = 5.520730828330736e+195;
bool r201571 = r201569 <= r201570;
double r201572 = i;
double r201573 = beta;
double r201574 = r201569 + r201573;
double r201575 = 2.0;
double r201576 = r201575 * r201572;
double r201577 = r201574 + r201576;
double r201578 = 1.0;
double r201579 = sqrt(r201578);
double r201580 = r201577 + r201579;
double r201581 = r201572 / r201580;
double r201582 = r201574 + r201572;
double r201583 = r201577 - r201579;
double r201584 = r201582 / r201583;
double r201585 = r201581 * r201584;
double r201586 = fma(r201572, r201575, r201574);
double r201587 = r201572 * r201582;
double r201588 = fma(r201573, r201569, r201587);
double r201589 = sqrt(r201588);
double r201590 = r201589 / r201586;
double r201591 = r201586 / r201590;
double r201592 = r201591 / r201589;
double r201593 = r201585 / r201592;
double r201594 = 0.0;
double r201595 = r201571 ? r201593 : r201594;
return r201595;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if alpha < 5.520730828330736e+195Initial program 52.4
Simplified51.8
rmApplied associate-/l*47.4
rmApplied *-un-lft-identity47.4
Applied add-sqr-sqrt47.4
Applied times-frac47.4
Applied times-frac38.3
Applied associate-/r*36.7
Simplified36.7
rmApplied add-sqr-sqrt36.7
Applied difference-of-squares36.7
Applied times-frac34.6
rmApplied associate-/l*34.6
if 5.520730828330736e+195 < alpha Initial program 64.0
Simplified57.6
Taylor expanded around inf 44.7
Final simplification35.9
herbie shell --seed 2020049 +o rules:numerics
(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)))