Average Error: 54.3 → 36.6
Time: 40.8s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1 \land i \gt 1\]
\[\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 4.524890541013963810292220327990753487478 \cdot 10^{196}:\\ \;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i}}{\left(\left(\beta + \alpha\right) + 2 \cdot i\right) - \sqrt{1}}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
\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 4.524890541013963810292220327990753487478 \cdot 10^{196}:\\
\;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i}}{\left(\left(\beta + \alpha\right) + 2 \cdot i\right) - \sqrt{1}}\\

\mathbf{else}:\\
\;\;\;\;0\\

\end{array}
double f(double alpha, double beta, double i) {
        double r4033419 = i;
        double r4033420 = alpha;
        double r4033421 = beta;
        double r4033422 = r4033420 + r4033421;
        double r4033423 = r4033422 + r4033419;
        double r4033424 = r4033419 * r4033423;
        double r4033425 = r4033421 * r4033420;
        double r4033426 = r4033425 + r4033424;
        double r4033427 = r4033424 * r4033426;
        double r4033428 = 2.0;
        double r4033429 = r4033428 * r4033419;
        double r4033430 = r4033422 + r4033429;
        double r4033431 = r4033430 * r4033430;
        double r4033432 = r4033427 / r4033431;
        double r4033433 = 1.0;
        double r4033434 = r4033431 - r4033433;
        double r4033435 = r4033432 / r4033434;
        return r4033435;
}

double f(double alpha, double beta, double i) {
        double r4033436 = beta;
        double r4033437 = 4.524890541013964e+196;
        bool r4033438 = r4033436 <= r4033437;
        double r4033439 = i;
        double r4033440 = alpha;
        double r4033441 = r4033436 + r4033440;
        double r4033442 = r4033439 + r4033441;
        double r4033443 = r4033439 * r4033442;
        double r4033444 = 2.0;
        double r4033445 = r4033444 * r4033439;
        double r4033446 = r4033441 + r4033445;
        double r4033447 = r4033443 / r4033446;
        double r4033448 = 1.0;
        double r4033449 = sqrt(r4033448);
        double r4033450 = r4033449 + r4033446;
        double r4033451 = r4033447 / r4033450;
        double r4033452 = r4033440 * r4033436;
        double r4033453 = r4033443 + r4033452;
        double r4033454 = r4033453 / r4033446;
        double r4033455 = r4033446 - r4033449;
        double r4033456 = r4033454 / r4033455;
        double r4033457 = r4033451 * r4033456;
        double r4033458 = 0.0;
        double r4033459 = r4033438 ? r4033457 : r4033458;
        return r4033459;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if beta < 4.524890541013964e+196

    1. Initial program 53.0

      \[\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}\]
    2. Using strategy rm
    3. Applied add-sqr-sqrt53.0

      \[\leadsto \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) - \color{blue}{\sqrt{1} \cdot \sqrt{1}}}\]
    4. Applied difference-of-squares53.0

      \[\leadsto \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)}}{\color{blue}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}\right)}}\]
    5. Applied times-frac37.6

      \[\leadsto \frac{\color{blue}{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i} \cdot \frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}}{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}\right) \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}\right)}\]
    6. Applied times-frac35.6

      \[\leadsto \color{blue}{\frac{\frac{i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + \sqrt{1}} \cdot \frac{\frac{\beta \cdot \alpha + i \cdot \left(\left(\alpha + \beta\right) + i\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) - \sqrt{1}}}\]

    if 4.524890541013964e+196 < beta

    1. Initial program 64.0

      \[\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}\]
    2. Taylor expanded around inf 43.6

      \[\leadsto \color{blue}{0}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification36.6

    \[\leadsto \begin{array}{l} \mathbf{if}\;\beta \le 4.524890541013963810292220327990753487478 \cdot 10^{196}:\\ \;\;\;\;\frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right)}{\left(\beta + \alpha\right) + 2 \cdot i}}{\sqrt{1} + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \frac{\frac{i \cdot \left(i + \left(\beta + \alpha\right)\right) + \alpha \cdot \beta}{\left(\beta + \alpha\right) + 2 \cdot i}}{\left(\left(\beta + \alpha\right) + 2 \cdot i\right) - \sqrt{1}}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]

Reproduce

herbie shell --seed 2019172 +o rules:numerics
(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)))