Average Error: 23.3 → 7.8
Time: 22.4s
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}\;\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} \le -1:\\ \;\;\;\;\frac{\left(\frac{2}{\alpha} + \frac{8}{{\alpha}^{3}}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\alpha + \beta\right) \cdot \frac{\sqrt[3]{{\left(\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}\right)}^{3}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{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}\;\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} \le -1:\\
\;\;\;\;\frac{\left(\frac{2}{\alpha} + \frac{8}{{\alpha}^{3}}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\

\mathbf{else}:\\
\;\;\;\;\frac{\left(\alpha + \beta\right) \cdot \frac{\sqrt[3]{{\left(\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}\right)}^{3}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r116647 = alpha;
        double r116648 = beta;
        double r116649 = r116647 + r116648;
        double r116650 = r116648 - r116647;
        double r116651 = r116649 * r116650;
        double r116652 = 2.0;
        double r116653 = i;
        double r116654 = r116652 * r116653;
        double r116655 = r116649 + r116654;
        double r116656 = r116651 / r116655;
        double r116657 = r116655 + r116652;
        double r116658 = r116656 / r116657;
        double r116659 = 1.0;
        double r116660 = r116658 + r116659;
        double r116661 = r116660 / r116652;
        return r116661;
}

double f(double alpha, double beta, double i) {
        double r116662 = alpha;
        double r116663 = beta;
        double r116664 = r116662 + r116663;
        double r116665 = r116663 - r116662;
        double r116666 = r116664 * r116665;
        double r116667 = 2.0;
        double r116668 = i;
        double r116669 = r116667 * r116668;
        double r116670 = r116664 + r116669;
        double r116671 = r116666 / r116670;
        double r116672 = r116670 + r116667;
        double r116673 = r116671 / r116672;
        double r116674 = -1.0;
        bool r116675 = r116673 <= r116674;
        double r116676 = r116667 / r116662;
        double r116677 = 8.0;
        double r116678 = 3.0;
        double r116679 = pow(r116662, r116678);
        double r116680 = r116677 / r116679;
        double r116681 = r116676 + r116680;
        double r116682 = 4.0;
        double r116683 = r116662 * r116662;
        double r116684 = r116682 / r116683;
        double r116685 = r116681 - r116684;
        double r116686 = r116685 / r116667;
        double r116687 = r116665 / r116670;
        double r116688 = pow(r116687, r116678);
        double r116689 = cbrt(r116688);
        double r116690 = r116689 / r116672;
        double r116691 = r116664 * r116690;
        double r116692 = 1.0;
        double r116693 = r116691 + r116692;
        double r116694 = r116693 / r116667;
        double r116695 = r116675 ? r116686 : r116694;
        return r116695;
}

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 (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) 2.0)) < -1.0

    1. Initial program 63.3

      \[\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. Using strategy rm
    3. Applied *-un-lft-identity63.3

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\color{blue}{1 \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2\right)}} + 1}{2}\]
    4. Applied *-un-lft-identity63.3

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

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

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

      \[\leadsto \frac{\color{blue}{\left(\alpha + \beta\right)} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    8. Using strategy rm
    9. Applied add-exp-log53.8

      \[\leadsto \frac{\color{blue}{e^{\log \left(\left(\alpha + \beta\right) \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1\right)}}}{2}\]
    10. Taylor expanded around inf 33.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}\]
    11. Simplified33.4

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

    if -1.0 < (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2.0 i))) (+ (+ (+ alpha beta) (* 2.0 i)) 2.0))

    1. Initial program 11.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. Using strategy rm
    3. Applied *-un-lft-identity11.9

      \[\leadsto \frac{\frac{\frac{\left(\alpha + \beta\right) \cdot \left(\beta - \alpha\right)}{\left(\alpha + \beta\right) + 2 \cdot i}}{\color{blue}{1 \cdot \left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2\right)}} + 1}{2}\]
    4. Applied *-un-lft-identity11.9

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

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

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

      \[\leadsto \frac{\color{blue}{\left(\alpha + \beta\right)} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    8. Using strategy rm
    9. Applied add-cbrt-cube16.3

      \[\leadsto \frac{\left(\alpha + \beta\right) \cdot \frac{\frac{\beta - \alpha}{\color{blue}{\sqrt[3]{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    10. Applied add-cbrt-cube22.4

      \[\leadsto \frac{\left(\alpha + \beta\right) \cdot \frac{\frac{\color{blue}{\sqrt[3]{\left(\left(\beta - \alpha\right) \cdot \left(\beta - \alpha\right)\right) \cdot \left(\beta - \alpha\right)}}}{\sqrt[3]{\left(\left(\left(\alpha + \beta\right) + 2 \cdot i\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)\right) \cdot \left(\left(\alpha + \beta\right) + 2 \cdot i\right)}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\]
    11. Applied cbrt-undiv22.4

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\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} \le -1:\\ \;\;\;\;\frac{\left(\frac{2}{\alpha} + \frac{8}{{\alpha}^{3}}\right) - \frac{4}{\alpha \cdot \alpha}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\left(\alpha + \beta\right) \cdot \frac{\sqrt[3]{{\left(\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}\right)}^{3}}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2} + 1}{2}\\ \end{array}\]

Reproduce

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