\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.0}\begin{array}{l}
\mathbf{if}\;i \le 2.495505368754722 \cdot 10^{+120}:\\
\;\;\;\;\frac{\frac{\frac{i}{\frac{\left(\alpha + \beta\right) + i \cdot 2}{\left(\alpha + \beta\right) + i}}}{\sqrt{1.0} + \left(\left(\alpha + \beta\right) + i \cdot 2\right)} \cdot \frac{\left(\left(\alpha + \beta\right) + i\right) \cdot i + \alpha \cdot \beta}{\left(\alpha + \beta\right) + i \cdot 2}}{\left(\left(\alpha + \beta\right) + i \cdot 2\right) - \sqrt{1.0}}\\
\mathbf{else}:\\
\;\;\;\;\left(\frac{\sqrt{\frac{i}{\frac{\left(\alpha + \beta\right) + i \cdot 2}{\left(\alpha + \beta\right) + i}}}}{\sqrt{\sqrt{1.0} + \left(\left(\alpha + \beta\right) + i \cdot 2\right)}} \cdot \frac{\sqrt{\frac{i}{\frac{\left(\alpha + \beta\right) + i \cdot 2}{\left(\alpha + \beta\right) + i}}}}{\sqrt{\sqrt{1.0} + \left(\left(\alpha + \beta\right) + i \cdot 2\right)}}\right) \cdot \frac{\frac{1}{4} \cdot \left(\alpha + \beta\right) + \frac{1}{2} \cdot i}{\left(\left(\alpha + \beta\right) + i \cdot 2\right) - \sqrt{1.0}}\\
\end{array}double f(double alpha, double beta, double i) {
double r4414371 = i;
double r4414372 = alpha;
double r4414373 = beta;
double r4414374 = r4414372 + r4414373;
double r4414375 = r4414374 + r4414371;
double r4414376 = r4414371 * r4414375;
double r4414377 = r4414373 * r4414372;
double r4414378 = r4414377 + r4414376;
double r4414379 = r4414376 * r4414378;
double r4414380 = 2.0;
double r4414381 = r4414380 * r4414371;
double r4414382 = r4414374 + r4414381;
double r4414383 = r4414382 * r4414382;
double r4414384 = r4414379 / r4414383;
double r4414385 = 1.0;
double r4414386 = r4414383 - r4414385;
double r4414387 = r4414384 / r4414386;
return r4414387;
}
double f(double alpha, double beta, double i) {
double r4414388 = i;
double r4414389 = 2.495505368754722e+120;
bool r4414390 = r4414388 <= r4414389;
double r4414391 = alpha;
double r4414392 = beta;
double r4414393 = r4414391 + r4414392;
double r4414394 = 2.0;
double r4414395 = r4414388 * r4414394;
double r4414396 = r4414393 + r4414395;
double r4414397 = r4414393 + r4414388;
double r4414398 = r4414396 / r4414397;
double r4414399 = r4414388 / r4414398;
double r4414400 = 1.0;
double r4414401 = sqrt(r4414400);
double r4414402 = r4414401 + r4414396;
double r4414403 = r4414399 / r4414402;
double r4414404 = r4414397 * r4414388;
double r4414405 = r4414391 * r4414392;
double r4414406 = r4414404 + r4414405;
double r4414407 = r4414406 / r4414396;
double r4414408 = r4414403 * r4414407;
double r4414409 = r4414396 - r4414401;
double r4414410 = r4414408 / r4414409;
double r4414411 = sqrt(r4414399);
double r4414412 = sqrt(r4414402);
double r4414413 = r4414411 / r4414412;
double r4414414 = r4414413 * r4414413;
double r4414415 = 0.25;
double r4414416 = r4414415 * r4414393;
double r4414417 = 0.5;
double r4414418 = r4414417 * r4414388;
double r4414419 = r4414416 + r4414418;
double r4414420 = r4414419 / r4414409;
double r4414421 = r4414414 * r4414420;
double r4414422 = r4414390 ? r4414410 : r4414421;
return r4414422;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if i < 2.495505368754722e+120Initial program 37.3
rmApplied add-sqr-sqrt37.3
Applied difference-of-squares37.3
Applied times-frac14.7
Applied times-frac10.0
rmApplied associate-/l*10.0
rmApplied associate-*r/9.9
if 2.495505368754722e+120 < i Initial program 62.1
rmApplied add-sqr-sqrt62.1
Applied difference-of-squares62.1
Applied times-frac54.9
Applied times-frac54.6
rmApplied associate-/l*54.6
Taylor expanded around 0 11.8
Simplified11.8
rmApplied add-sqr-sqrt12.3
Applied add-sqr-sqrt11.8
Applied times-frac11.8
Final simplification11.1
herbie shell --seed 2019163
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
: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.0)))