Average Error: 23.6 → 12.1
Time: 14.3s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1 \land i \gt 0.0\]
\[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
\[\begin{array}{l} \mathbf{if}\;\alpha \le 1.12143143054116757 \cdot 10^{50}:\\ \;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{2} \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\frac{8}{{\alpha}^{3}} + \frac{2}{\alpha}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\ \end{array}\]
\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}
\begin{array}{l}
\mathbf{if}\;\alpha \le 1.12143143054116757 \cdot 10^{50}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{2} \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\left(\frac{8}{{\alpha}^{3}} + \frac{2}{\alpha}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r154625 = alpha;
        double r154626 = beta;
        double r154627 = r154625 + r154626;
        double r154628 = r154626 - r154625;
        double r154629 = r154627 * r154628;
        double r154630 = 2.0;
        double r154631 = i;
        double r154632 = r154630 * r154631;
        double r154633 = r154627 + r154632;
        double r154634 = r154629 / r154633;
        double r154635 = r154633 + r154630;
        double r154636 = r154634 / r154635;
        double r154637 = 1.0;
        double r154638 = r154636 + r154637;
        double r154639 = r154638 / r154630;
        return r154639;
}

double f(double alpha, double beta, double i) {
        double r154640 = alpha;
        double r154641 = 1.1214314305411676e+50;
        bool r154642 = r154640 <= r154641;
        double r154643 = beta;
        double r154644 = r154640 + r154643;
        double r154645 = 2.0;
        double r154646 = i;
        double r154647 = fma(r154645, r154646, r154644);
        double r154648 = r154647 + r154645;
        double r154649 = r154644 / r154648;
        double r154650 = r154643 - r154640;
        double r154651 = r154650 / r154647;
        double r154652 = 1.0;
        double r154653 = fma(r154649, r154651, r154652);
        double r154654 = 2.0;
        double r154655 = pow(r154653, r154654);
        double r154656 = exp(r154653);
        double r154657 = log(r154656);
        double r154658 = r154655 * r154657;
        double r154659 = cbrt(r154658);
        double r154660 = r154659 / r154645;
        double r154661 = 8.0;
        double r154662 = 3.0;
        double r154663 = pow(r154640, r154662);
        double r154664 = r154661 / r154663;
        double r154665 = r154645 / r154640;
        double r154666 = r154664 + r154665;
        double r154667 = 4.0;
        double r154668 = r154640 * r154640;
        double r154669 = r154667 / r154668;
        double r154670 = r154666 - r154669;
        double r154671 = r154670 / r154645;
        double r154672 = r154642 ? r154660 : r154671;
        return r154672;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Split input into 2 regimes
  2. if alpha < 1.1214314305411676e+50

    1. Initial program 11.8

      \[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    2. Simplified1.3

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}}\]
    3. Using strategy rm
    4. Applied add-log-exp1.4

      \[\leadsto \frac{\color{blue}{\log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\]
    5. Using strategy rm
    6. Applied add-cbrt-cube1.4

      \[\leadsto \frac{\color{blue}{\sqrt[3]{\left(\log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right) \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)\right) \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}}{2}\]
    7. Simplified1.4

      \[\leadsto \frac{\sqrt[3]{\color{blue}{{\left(\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{3}}}}{2}\]
    8. Using strategy rm
    9. Applied add-log-exp1.4

      \[\leadsto \frac{\sqrt[3]{{\color{blue}{\left(\log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)\right)}}^{3}}}{2}\]
    10. Using strategy rm
    11. Applied unpow31.4

      \[\leadsto \frac{\sqrt[3]{\color{blue}{\left(\log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right) \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)\right) \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}}{2}\]
    12. Simplified1.4

      \[\leadsto \frac{\sqrt[3]{\color{blue}{{\left(\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{2}} \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\]

    if 1.1214314305411676e+50 < alpha

    1. Initial program 54.9

      \[\frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    2. Simplified40.4

      \[\leadsto \color{blue}{\frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}}\]
    3. Using strategy rm
    4. Applied add-log-exp40.5

      \[\leadsto \frac{\color{blue}{\log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\]
    5. Taylor expanded around inf 40.4

      \[\leadsto \frac{\color{blue}{\left(2 \cdot \frac{1}{\alpha} + 8 \cdot \frac{1}{{\alpha}^{3}}\right) - 4 \cdot \frac{1}{{\alpha}^{2}}}}{2}\]
    6. Simplified40.4

      \[\leadsto \frac{\color{blue}{\left(\frac{8}{{\alpha}^{3}} + \frac{2}{\alpha}\right) - \frac{4}{\alpha \cdot \alpha}}}{2}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification12.1

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 1.12143143054116757 \cdot 10^{50}:\\ \;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{2} \cdot \log \left(e^{\mathsf{fma}\left(\frac{\alpha + \beta}{\mathsf{fma}\left(2, i, \alpha + \beta\right) + 2}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}\right)}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\frac{8}{{\alpha}^{3}} + \frac{2}{\alpha}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\ \end{array}\]

Reproduce

herbie shell --seed 2020042 +o rules:numerics
(FPCore (alpha beta i)
  :name "Octave 3.8, jcobi/2"
  :precision binary64
  :pre (and (> alpha -1) (> beta -1) (> i 0.0))
  (/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2)) 1) 2))