\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 8.062523904888540452301986752113315617235 \cdot 10^{212}:\\
\;\;\;\;\left(\frac{\sqrt{\frac{\sqrt{i \cdot \left(\left(i + \alpha\right) + \beta\right) + \alpha \cdot \beta}}{\sqrt{i \cdot 2 + \left(\beta + \alpha\right)}}}}{\frac{1}{\frac{\left(i + \alpha\right) + \beta}{i \cdot 2 + \left(\beta + \alpha\right)}}} \cdot \frac{\sqrt{\frac{i \cdot \left(\left(i + \alpha\right) + \beta\right) + \alpha \cdot \beta}{i \cdot 2 + \left(\beta + \alpha\right)}}}{\frac{\left(i \cdot 2 + \left(\beta + \alpha\right)\right) - \sqrt{1}}{i}}\right) \cdot \frac{\sqrt{\frac{\sqrt{i \cdot \left(\left(i + \alpha\right) + \beta\right) + \alpha \cdot \beta}}{\sqrt{\alpha + \left(\beta + i \cdot 2\right)}}}}{\left(\left(\sqrt{1} + \alpha\right) + \beta\right) + i \cdot 2}\\
\mathbf{else}:\\
\;\;\;\;\frac{i}{\frac{\left(\alpha + \left(\beta + i \cdot 2\right)\right) \cdot \left(\alpha + \left(\beta + i \cdot 2\right)\right) - 1}{i \cdot \frac{i + \left(\beta + \alpha\right)}{\alpha + \left(\beta + i \cdot 2\right)}}}\\
\end{array}double f(double alpha, double beta, double i) {
double r187499 = i;
double r187500 = alpha;
double r187501 = beta;
double r187502 = r187500 + r187501;
double r187503 = r187502 + r187499;
double r187504 = r187499 * r187503;
double r187505 = r187501 * r187500;
double r187506 = r187505 + r187504;
double r187507 = r187504 * r187506;
double r187508 = 2.0;
double r187509 = r187508 * r187499;
double r187510 = r187502 + r187509;
double r187511 = r187510 * r187510;
double r187512 = r187507 / r187511;
double r187513 = 1.0;
double r187514 = r187511 - r187513;
double r187515 = r187512 / r187514;
return r187515;
}
double f(double alpha, double beta, double i) {
double r187516 = beta;
double r187517 = 8.06252390488854e+212;
bool r187518 = r187516 <= r187517;
double r187519 = i;
double r187520 = alpha;
double r187521 = r187519 + r187520;
double r187522 = r187521 + r187516;
double r187523 = r187519 * r187522;
double r187524 = r187520 * r187516;
double r187525 = r187523 + r187524;
double r187526 = sqrt(r187525);
double r187527 = 2.0;
double r187528 = r187519 * r187527;
double r187529 = r187516 + r187520;
double r187530 = r187528 + r187529;
double r187531 = sqrt(r187530);
double r187532 = r187526 / r187531;
double r187533 = sqrt(r187532);
double r187534 = 1.0;
double r187535 = r187522 / r187530;
double r187536 = r187534 / r187535;
double r187537 = r187533 / r187536;
double r187538 = r187525 / r187530;
double r187539 = sqrt(r187538);
double r187540 = 1.0;
double r187541 = sqrt(r187540);
double r187542 = r187530 - r187541;
double r187543 = r187542 / r187519;
double r187544 = r187539 / r187543;
double r187545 = r187537 * r187544;
double r187546 = r187516 + r187528;
double r187547 = r187520 + r187546;
double r187548 = sqrt(r187547);
double r187549 = r187526 / r187548;
double r187550 = sqrt(r187549);
double r187551 = r187541 + r187520;
double r187552 = r187551 + r187516;
double r187553 = r187552 + r187528;
double r187554 = r187550 / r187553;
double r187555 = r187545 * r187554;
double r187556 = r187547 * r187547;
double r187557 = r187556 - r187540;
double r187558 = r187519 + r187529;
double r187559 = r187558 / r187547;
double r187560 = r187519 * r187559;
double r187561 = r187557 / r187560;
double r187562 = r187519 / r187561;
double r187563 = r187518 ? r187555 : r187562;
return r187563;
}



Bits error versus alpha



Bits error versus beta



Bits error versus i
Results
if beta < 8.06252390488854e+212Initial program 52.2
Simplified37.6
rmApplied add-sqr-sqrt37.6
Applied difference-of-squares37.6
Applied times-frac36.1
Applied add-sqr-sqrt36.3
Applied times-frac35.6
Simplified35.6
Simplified35.6
rmApplied div-inv35.6
Applied add-sqr-sqrt35.5
Applied add-sqr-sqrt35.5
Applied times-frac35.5
Applied sqrt-prod35.6
Applied times-frac35.6
Applied associate-*l*35.6
Simplified35.6
if 8.06252390488854e+212 < beta Initial program 64.0
Simplified57.5
Taylor expanded around inf 44.0
Final simplification36.5
herbie shell --seed 2019194
(FPCore (alpha beta i)
:name "Octave 3.8, jcobi/4"
:pre (and (> alpha -1.0) (> beta -1.0) (> i 1.0))
(/ (/ (* (* i (+ (+ alpha beta) i)) (+ (* beta alpha) (* i (+ (+ alpha beta) i)))) (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i)))) (- (* (+ (+ alpha beta) (* 2.0 i)) (+ (+ alpha beta) (* 2.0 i))) 1.0)))