\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}\;i \le 1.980179602823051922695011302564311656892 \cdot 10^{86}:\\
\;\;\;\;\frac{\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \frac{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + \sqrt{1}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}\\
\mathbf{elif}\;i \le 2.677113738334714207023502896599656837144 \cdot 10^{139}:\\
\;\;\;\;\frac{0.25 \cdot {i}^{2}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right) - 1}\\
\mathbf{elif}\;i \le 3.181408076006653625951156502184080205895 \cdot 10^{150}:\\
\;\;\;\;\frac{\sqrt{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \frac{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\left(\alpha + \beta\right) + \mathsf{fma}\left(i, 2, \sqrt{1}\right)} \cdot \frac{\sqrt{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \frac{\mathsf{fma}\left(\beta, \alpha, i \cdot \left(\left(\alpha + \beta\right) + i\right)\right)}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\mathsf{fma}\left(2, i, \alpha + \beta\right) - \sqrt{1}}\\
\mathbf{else}:\\
\;\;\;\;0\\
\end{array}double f(double alpha, double beta, double i) {
double r129301 = i;
double r129302 = alpha;
double r129303 = beta;
double r129304 = r129302 + r129303;
double r129305 = r129304 + r129301;
double r129306 = r129301 * r129305;
double r129307 = r129303 * r129302;
double r129308 = r129307 + r129306;
double r129309 = r129306 * r129308;
double r129310 = 2.0;
double r129311 = r129310 * r129301;
double r129312 = r129304 + r129311;
double r129313 = r129312 * r129312;
double r129314 = r129309 / r129313;
double r129315 = 1.0;
double r129316 = r129313 - r129315;
double r129317 = r129314 / r129316;
return r129317;
}
double f(double alpha, double beta, double i) {
double r129318 = i;
double r129319 = 1.980179602823052e+86;
bool r129320 = r129318 <= r129319;
double r129321 = alpha;
double r129322 = beta;
double r129323 = r129321 + r129322;
double r129324 = r129323 + r129318;
double r129325 = r129318 * r129324;
double r129326 = 2.0;
double r129327 = fma(r129326, r129318, r129323);
double r129328 = r129325 / r129327;
double r129329 = fma(r129322, r129321, r129325);
double r129330 = r129329 / r129327;
double r129331 = r129328 * r129330;
double r129332 = 1.0;
double r129333 = sqrt(r129332);
double r129334 = r129327 + r129333;
double r129335 = r129331 / r129334;
double r129336 = r129326 * r129318;
double r129337 = r129323 + r129336;
double r129338 = r129337 - r129333;
double r129339 = r129335 / r129338;
double r129340 = 2.677113738334714e+139;
bool r129341 = r129318 <= r129340;
double r129342 = 0.25;
double r129343 = 2.0;
double r129344 = pow(r129318, r129343);
double r129345 = r129342 * r129344;
double r129346 = r129337 * r129337;
double r129347 = r129346 - r129332;
double r129348 = r129345 / r129347;
double r129349 = 3.1814080760066536e+150;
bool r129350 = r129318 <= r129349;
double r129351 = sqrt(r129331);
double r129352 = fma(r129318, r129326, r129333);
double r129353 = r129323 + r129352;
double r129354 = r129351 / r129353;
double r129355 = r129327 - r129333;
double r129356 = r129351 / r129355;
double r129357 = r129354 * r129356;
double r129358 = 0.0;
double r129359 = r129350 ? r129357 : r129358;
double r129360 = r129341 ? r129348 : r129359;
double r129361 = r129320 ? r129339 : r129360;
return r129361;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
if i < 1.980179602823052e+86Initial program 28.1
rmApplied times-frac12.5
Simplified12.5
Simplified12.5
rmApplied add-sqr-sqrt12.5
Applied difference-of-squares12.5
Applied associate-/r*8.3
Simplified8.3
if 1.980179602823052e+86 < i < 2.677113738334714e+139Initial program 64.0
Taylor expanded around inf 18.9
if 2.677113738334714e+139 < i < 3.1814080760066536e+150Initial program 64.0
rmApplied add-sqr-sqrt64.0
Applied difference-of-squares64.0
Applied add-sqr-sqrt64.0
Applied times-frac64.0
Simplified64.0
Simplified17.5
if 3.1814080760066536e+150 < i Initial program 64.0
Taylor expanded around inf 61.9
Final simplification38.3
herbie shell --seed 2019208 +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)))