\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 6.112368800703077 \cdot 10^{174}:\\
\;\;\;\;\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{\mathsf{fma}\left(i, 2, \alpha + \beta\right)}{\sqrt{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}}} \cdot \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)}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r194432 = i;
double r194433 = alpha;
double r194434 = beta;
double r194435 = r194433 + r194434;
double r194436 = r194435 + r194432;
double r194437 = r194432 * r194436;
double r194438 = r194434 * r194433;
double r194439 = r194438 + r194437;
double r194440 = r194437 * r194439;
double r194441 = 2.0;
double r194442 = r194441 * r194432;
double r194443 = r194435 + r194442;
double r194444 = r194443 * r194443;
double r194445 = r194440 / r194444;
double r194446 = 1.0;
double r194447 = r194444 - r194446;
double r194448 = r194445 / r194447;
return r194448;
}
double f(double alpha, double beta, double i) {
double r194449 = beta;
double r194450 = 6.112368800703077e+174;
bool r194451 = r194449 <= r194450;
double r194452 = i;
double r194453 = alpha;
double r194454 = r194453 + r194449;
double r194455 = 2.0;
double r194456 = r194455 * r194452;
double r194457 = r194454 + r194456;
double r194458 = 1.0;
double r194459 = sqrt(r194458);
double r194460 = r194457 + r194459;
double r194461 = r194452 / r194460;
double r194462 = r194454 + r194452;
double r194463 = r194457 - r194459;
double r194464 = r194462 / r194463;
double r194465 = r194461 * r194464;
double r194466 = fma(r194452, r194455, r194454);
double r194467 = r194452 * r194462;
double r194468 = fma(r194449, r194453, r194467);
double r194469 = sqrt(r194468);
double r194470 = r194466 / r194469;
double r194471 = r194465 / r194470;
double r194472 = r194469 / r194466;
double r194473 = r194471 * r194472;
double r194474 = 0.0;
double r194475 = r194451 ? r194473 : r194474;
return r194475;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if beta < 6.112368800703077e+174Initial program 52.2
Simplified52.0
rmApplied associate-/l*47.8
rmApplied *-un-lft-identity47.8
Applied add-sqr-sqrt47.8
Applied times-frac47.7
Applied times-frac38.5
Applied associate-/r*36.9
Simplified36.9
rmApplied add-sqr-sqrt36.9
Applied difference-of-squares36.9
Applied times-frac35.0
rmApplied associate-/r/35.0
Applied times-frac35.0
if 6.112368800703077e+174 < beta Initial program 64.0
Simplified56.4
Taylor expanded around inf 46.2
Final simplification36.5
herbie shell --seed 2020062 +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)))