Average Error: 24.0 → 11.3
Time: 20.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.2663211663858966 \cdot 10^{151}:\\ \;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\frac{\frac{\beta + \alpha}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right| \cdot \sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{3}}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\mathsf{fma}\left(\frac{1}{{\alpha}^{2}}, \frac{8}{\alpha} - 4, \frac{2}{\alpha}\right)}{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.2663211663858966 \cdot 10^{151}:\\
\;\;\;\;\frac{\sqrt[3]{{\left(\mathsf{fma}\left(\frac{\frac{\beta + \alpha}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right| \cdot \sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right)}^{3}}}{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\mathsf{fma}\left(\frac{1}{{\alpha}^{2}}, \frac{8}{\alpha} - 4, \frac{2}{\alpha}\right)}{2}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r90192 = alpha;
        double r90193 = beta;
        double r90194 = r90192 + r90193;
        double r90195 = r90193 - r90192;
        double r90196 = r90194 * r90195;
        double r90197 = 2.0;
        double r90198 = i;
        double r90199 = r90197 * r90198;
        double r90200 = r90194 + r90199;
        double r90201 = r90196 / r90200;
        double r90202 = r90200 + r90197;
        double r90203 = r90201 / r90202;
        double r90204 = 1.0;
        double r90205 = r90203 + r90204;
        double r90206 = r90205 / r90197;
        return r90206;
}

double f(double alpha, double beta, double i) {
        double r90207 = alpha;
        double r90208 = 1.2663211663858966e+151;
        bool r90209 = r90207 <= r90208;
        double r90210 = beta;
        double r90211 = r90210 + r90207;
        double r90212 = 2.0;
        double r90213 = i;
        double r90214 = r90207 + r90210;
        double r90215 = fma(r90212, r90213, r90214);
        double r90216 = r90212 + r90215;
        double r90217 = cbrt(r90216);
        double r90218 = fabs(r90217);
        double r90219 = sqrt(r90216);
        double r90220 = r90218 * r90219;
        double r90221 = r90211 / r90220;
        double r90222 = sqrt(r90217);
        double r90223 = r90221 / r90222;
        double r90224 = r90210 - r90207;
        double r90225 = r90224 / r90215;
        double r90226 = 1.0;
        double r90227 = fma(r90223, r90225, r90226);
        double r90228 = 3.0;
        double r90229 = pow(r90227, r90228);
        double r90230 = cbrt(r90229);
        double r90231 = r90230 / r90212;
        double r90232 = 1.0;
        double r90233 = 2.0;
        double r90234 = pow(r90207, r90233);
        double r90235 = r90232 / r90234;
        double r90236 = 8.0;
        double r90237 = r90236 / r90207;
        double r90238 = 4.0;
        double r90239 = r90237 - r90238;
        double r90240 = r90212 / r90207;
        double r90241 = fma(r90235, r90239, r90240);
        double r90242 = r90241 / r90212;
        double r90243 = r90209 ? r90231 : r90242;
        return r90243;
}

Error

Bits error versus alpha

Bits error versus beta

Bits error versus i

Derivation

  1. Split input into 2 regimes
  2. if alpha < 1.2663211663858966e+151

    1. Initial program 15.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. Simplified5.5

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

      \[\leadsto \frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\color{blue}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    5. Applied *-un-lft-identity5.5

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

      \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \frac{\alpha + \beta}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    7. Using strategy rm
    8. Applied add-cube-cbrt5.5

      \[\leadsto \frac{\mathsf{fma}\left(\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \frac{\alpha + \beta}{\sqrt{\color{blue}{\left(\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right) \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    9. Applied sqrt-prod5.5

      \[\leadsto \frac{\mathsf{fma}\left(\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \frac{\alpha + \beta}{\color{blue}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    10. Applied *-un-lft-identity5.5

      \[\leadsto \frac{\mathsf{fma}\left(\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \frac{\color{blue}{1 \cdot \left(\alpha + \beta\right)}}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    11. Applied times-frac5.5

      \[\leadsto \frac{\mathsf{fma}\left(\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \color{blue}{\left(\frac{1}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}} \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}\right)}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    12. Applied associate-*r*5.5

      \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\left(\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}} \cdot \frac{1}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}\right) \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    13. Simplified5.5

      \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\frac{\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right|}} \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    14. Using strategy rm
    15. Applied add-cbrt-cube5.5

      \[\leadsto \frac{\color{blue}{\sqrt[3]{\left(\mathsf{fma}\left(\frac{\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right|} \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right) \cdot \mathsf{fma}\left(\frac{\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right|} \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)\right) \cdot \mathsf{fma}\left(\frac{\frac{1}{\sqrt{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\left|\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right|} \cdot \frac{\alpha + \beta}{\sqrt{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}}}{2}\]
    16. Simplified5.5

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

    if 1.2663211663858966e+151 < alpha

    1. Initial program 63.6

      \[\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. Simplified47.9

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

      \[\leadsto \frac{\mathsf{fma}\left(\frac{\alpha + \beta}{\color{blue}{\left(\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}\right) \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    5. Applied associate-/r*48.5

      \[\leadsto \frac{\mathsf{fma}\left(\color{blue}{\frac{\frac{\alpha + \beta}{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)} \cdot \sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}{\sqrt[3]{2 + \mathsf{fma}\left(2, i, \alpha + \beta\right)}}}, \frac{\beta - \alpha}{\mathsf{fma}\left(2, i, \alpha + \beta\right)}, 1\right)}{2}\]
    6. Taylor expanded around inf 40.3

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

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

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

Reproduce

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