Average Error: 54.2 → 38.3
Time: 19.4s
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}\;i \le 1.980179602823051922695011302564311656892 \cdot 10^{86}:\\ \;\;\;\;\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}}\\ \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{\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}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0}{\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}\\ \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}\;i \le 1.980179602823051922695011302564311656892 \cdot 10^{86}:\\
\;\;\;\;\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}}\\

\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{\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}}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{0}{\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}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r156414 = i;
        double r156415 = alpha;
        double r156416 = beta;
        double r156417 = r156415 + r156416;
        double r156418 = r156417 + r156414;
        double r156419 = r156414 * r156418;
        double r156420 = r156416 * r156415;
        double r156421 = r156420 + r156419;
        double r156422 = r156419 * r156421;
        double r156423 = 2.0;
        double r156424 = r156423 * r156414;
        double r156425 = r156417 + r156424;
        double r156426 = r156425 * r156425;
        double r156427 = r156422 / r156426;
        double r156428 = 1.0;
        double r156429 = r156426 - r156428;
        double r156430 = r156427 / r156429;
        return r156430;
}

double f(double alpha, double beta, double i) {
        double r156431 = i;
        double r156432 = 1.980179602823052e+86;
        bool r156433 = r156431 <= r156432;
        double r156434 = alpha;
        double r156435 = beta;
        double r156436 = r156434 + r156435;
        double r156437 = r156436 + r156431;
        double r156438 = r156431 * r156437;
        double r156439 = 2.0;
        double r156440 = r156439 * r156431;
        double r156441 = r156436 + r156440;
        double r156442 = r156438 / r156441;
        double r156443 = 1.0;
        double r156444 = sqrt(r156443);
        double r156445 = r156441 + r156444;
        double r156446 = r156442 / r156445;
        double r156447 = r156435 * r156434;
        double r156448 = r156447 + r156438;
        double r156449 = r156448 / r156441;
        double r156450 = r156441 - r156444;
        double r156451 = r156449 / r156450;
        double r156452 = r156446 * r156451;
        double r156453 = 2.677113738334714e+139;
        bool r156454 = r156431 <= r156453;
        double r156455 = 0.25;
        double r156456 = 2.0;
        double r156457 = pow(r156431, r156456);
        double r156458 = r156455 * r156457;
        double r156459 = r156441 * r156441;
        double r156460 = r156459 - r156443;
        double r156461 = r156458 / r156460;
        double r156462 = 3.1814080760066536e+150;
        bool r156463 = r156431 <= r156462;
        double r156464 = 0.0;
        double r156465 = r156464 / r156459;
        double r156466 = r156465 / r156460;
        double r156467 = r156463 ? r156452 : r156466;
        double r156468 = r156454 ? r156461 : r156467;
        double r156469 = r156433 ? r156452 : r156468;
        return r156469;
}

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 3 regimes
  2. if i < 1.980179602823052e+86 or 2.677113738334714e+139 < i < 3.1814080760066536e+150

    1. Initial program 32.6

      \[\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-sqrt32.6

      \[\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-squares32.6

      \[\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-frac13.3

      \[\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-frac9.5

      \[\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 1.980179602823052e+86 < i < 2.677113738334714e+139

    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 18.9

      \[\leadsto \frac{\color{blue}{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}\]

    if 3.1814080760066536e+150 < i

    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 0 61.9

      \[\leadsto \frac{\frac{\color{blue}{0}}{\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}\]
  3. Recombined 3 regimes into one program.
  4. Final simplification38.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;i \le 1.980179602823051922695011302564311656892 \cdot 10^{86}:\\ \;\;\;\;\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}}\\ \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{\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}}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{0}{\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}\\ \end{array}\]

Reproduce

herbie shell --seed 2019208 
(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)))