Average Error: 23.7 → 12.4
Time: 33.9s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1 \land i \gt 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.0} + 1.0}{2.0}\]
\[\begin{array}{l} \mathbf{if}\;\alpha \le 4.246640781335346 \cdot 10^{+79}:\\ \;\;\;\;\frac{e^{\log \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\beta + \alpha\right) + 1.0\right)}}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)} + \left(\frac{2.0}{\alpha} - \frac{4.0}{\alpha \cdot \alpha}\right)}{2.0}\\ \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.0} + 1.0}{2.0}
\begin{array}{l}
\mathbf{if}\;\alpha \le 4.246640781335346 \cdot 10^{+79}:\\
\;\;\;\;\frac{e^{\log \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\beta + \alpha\right) + 1.0\right)}}{2.0}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)} + \left(\frac{2.0}{\alpha} - \frac{4.0}{\alpha \cdot \alpha}\right)}{2.0}\\

\end{array}
double f(double alpha, double beta, double i) {
        double r3550879 = alpha;
        double r3550880 = beta;
        double r3550881 = r3550879 + r3550880;
        double r3550882 = r3550880 - r3550879;
        double r3550883 = r3550881 * r3550882;
        double r3550884 = 2.0;
        double r3550885 = i;
        double r3550886 = r3550884 * r3550885;
        double r3550887 = r3550881 + r3550886;
        double r3550888 = r3550883 / r3550887;
        double r3550889 = 2.0;
        double r3550890 = r3550887 + r3550889;
        double r3550891 = r3550888 / r3550890;
        double r3550892 = 1.0;
        double r3550893 = r3550891 + r3550892;
        double r3550894 = r3550893 / r3550889;
        return r3550894;
}

double f(double alpha, double beta, double i) {
        double r3550895 = alpha;
        double r3550896 = 4.246640781335346e+79;
        bool r3550897 = r3550895 <= r3550896;
        double r3550898 = beta;
        double r3550899 = r3550898 - r3550895;
        double r3550900 = r3550898 + r3550895;
        double r3550901 = 2.0;
        double r3550902 = i;
        double r3550903 = r3550901 * r3550902;
        double r3550904 = r3550900 + r3550903;
        double r3550905 = r3550899 / r3550904;
        double r3550906 = 2.0;
        double r3550907 = r3550906 + r3550904;
        double r3550908 = r3550905 / r3550907;
        double r3550909 = r3550908 * r3550900;
        double r3550910 = 1.0;
        double r3550911 = r3550909 + r3550910;
        double r3550912 = log(r3550911);
        double r3550913 = exp(r3550912);
        double r3550914 = r3550913 / r3550906;
        double r3550915 = 8.0;
        double r3550916 = r3550895 * r3550895;
        double r3550917 = r3550895 * r3550916;
        double r3550918 = r3550915 / r3550917;
        double r3550919 = r3550906 / r3550895;
        double r3550920 = 4.0;
        double r3550921 = r3550920 / r3550916;
        double r3550922 = r3550919 - r3550921;
        double r3550923 = r3550918 + r3550922;
        double r3550924 = r3550923 / r3550906;
        double r3550925 = r3550897 ? r3550914 : r3550924;
        return r3550925;
}

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 < 4.246640781335346e+79

    1. Initial program 12.4

      \[\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.0} + 1.0}{2.0}\]
    2. Using strategy rm
    3. Applied *-un-lft-identity12.4

      \[\leadsto \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) + \color{blue}{1 \cdot 2.0}} + 1.0}{2.0}\]
    4. Applied *-un-lft-identity12.4

      \[\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(\alpha + \beta\right) + 2 \cdot i\right)} + 1 \cdot 2.0} + 1.0}{2.0}\]
    5. Applied distribute-lft-out12.4

      \[\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.0\right)}} + 1.0}{2.0}\]
    6. Applied *-un-lft-identity12.4

      \[\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.0\right)} + 1.0}{2.0}\]
    7. Applied times-frac2.3

      \[\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.0\right)} + 1.0}{2.0}\]
    8. Applied times-frac2.3

      \[\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.0}} + 1.0}{2.0}\]
    9. Simplified2.3

      \[\leadsto \frac{\color{blue}{\left(\beta + \alpha\right)} \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0}{2.0}\]
    10. Using strategy rm
    11. Applied add-exp-log2.3

      \[\leadsto \frac{\color{blue}{e^{\log \left(\left(\beta + \alpha\right) \cdot \frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2 \cdot i}}{\left(\left(\alpha + \beta\right) + 2 \cdot i\right) + 2.0} + 1.0\right)}}}{2.0}\]

    if 4.246640781335346e+79 < alpha

    1. Initial program 55.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.0} + 1.0}{2.0}\]
    2. Taylor expanded around -inf 41.6

      \[\leadsto \frac{\color{blue}{\left(2.0 \cdot \frac{1}{\alpha} + 8.0 \cdot \frac{1}{{\alpha}^{3}}\right) - 4.0 \cdot \frac{1}{{\alpha}^{2}}}}{2.0}\]
    3. Simplified41.6

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 4.246640781335346 \cdot 10^{+79}:\\ \;\;\;\;\frac{e^{\log \left(\frac{\frac{\beta - \alpha}{\left(\beta + \alpha\right) + 2 \cdot i}}{2.0 + \left(\left(\beta + \alpha\right) + 2 \cdot i\right)} \cdot \left(\beta + \alpha\right) + 1.0\right)}}{2.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{8.0}{\alpha \cdot \left(\alpha \cdot \alpha\right)} + \left(\frac{2.0}{\alpha} - \frac{4.0}{\alpha \cdot \alpha}\right)}{2.0}\\ \end{array}\]

Reproduce

herbie shell --seed 2019151 
(FPCore (alpha beta i)
  :name "Octave 3.8, jcobi/2"
  :pre (and (> alpha -1) (> beta -1) (> i 0))
  (/ (+ (/ (/ (* (+ alpha beta) (- beta alpha)) (+ (+ alpha beta) (* 2 i))) (+ (+ (+ alpha beta) (* 2 i)) 2.0)) 1.0) 2.0))