Average Error: 16.1 → 5.9
Time: 5.1s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1\]
\[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
\[\begin{array}{l} \mathbf{if}\;\alpha \le 4012978693.971179:\\ \;\;\;\;\frac{e^{\sqrt[3]{{\left(\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}^{3}}}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\frac{\frac{4}{\alpha}}{\alpha} + \frac{-8}{{\alpha}^{3}}\right) + \frac{-2}{\alpha}\right)}{2}\\ \end{array}\]
\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}
\begin{array}{l}
\mathbf{if}\;\alpha \le 4012978693.971179:\\
\;\;\;\;\frac{e^{\sqrt[3]{{\left(\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}^{3}}}}{2}\\

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

\end{array}
double f(double alpha, double beta) {
        double r123741 = beta;
        double r123742 = alpha;
        double r123743 = r123741 - r123742;
        double r123744 = r123742 + r123741;
        double r123745 = 2.0;
        double r123746 = r123744 + r123745;
        double r123747 = r123743 / r123746;
        double r123748 = 1.0;
        double r123749 = r123747 + r123748;
        double r123750 = r123749 / r123745;
        return r123750;
}

double f(double alpha, double beta) {
        double r123751 = alpha;
        double r123752 = 4012978693.971179;
        bool r123753 = r123751 <= r123752;
        double r123754 = beta;
        double r123755 = r123751 + r123754;
        double r123756 = 2.0;
        double r123757 = r123755 + r123756;
        double r123758 = r123754 / r123757;
        double r123759 = r123751 / r123757;
        double r123760 = 1.0;
        double r123761 = r123759 - r123760;
        double r123762 = r123758 - r123761;
        double r123763 = log(r123762);
        double r123764 = 3.0;
        double r123765 = pow(r123763, r123764);
        double r123766 = cbrt(r123765);
        double r123767 = exp(r123766);
        double r123768 = r123767 / r123756;
        double r123769 = 4.0;
        double r123770 = r123769 / r123751;
        double r123771 = r123770 / r123751;
        double r123772 = 8.0;
        double r123773 = -r123772;
        double r123774 = pow(r123751, r123764);
        double r123775 = r123773 / r123774;
        double r123776 = r123771 + r123775;
        double r123777 = -r123756;
        double r123778 = r123777 / r123751;
        double r123779 = r123776 + r123778;
        double r123780 = r123758 - r123779;
        double r123781 = r123780 / r123756;
        double r123782 = r123753 ? r123768 : r123781;
        return r123782;
}

Error

Bits error versus alpha

Bits error versus beta

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 2 regimes
  2. if alpha < 4012978693.971179

    1. Initial program 0.1

      \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
    2. Using strategy rm
    3. Applied div-sub0.1

      \[\leadsto \frac{\color{blue}{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \frac{\alpha}{\left(\alpha + \beta\right) + 2}\right)} + 1}{2}\]
    4. Applied associate-+l-0.1

      \[\leadsto \frac{\color{blue}{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}}{2}\]
    5. Using strategy rm
    6. Applied add-exp-log0.1

      \[\leadsto \frac{\color{blue}{e^{\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)}}}{2}\]
    7. Using strategy rm
    8. Applied add-cbrt-cube0.2

      \[\leadsto \frac{e^{\color{blue}{\sqrt[3]{\left(\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right) \cdot \log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right) \cdot \log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)}}}}{2}\]
    9. Simplified0.2

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

    if 4012978693.971179 < alpha

    1. Initial program 49.9

      \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
    2. Using strategy rm
    3. Applied div-sub49.9

      \[\leadsto \frac{\color{blue}{\left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \frac{\alpha}{\left(\alpha + \beta\right) + 2}\right)} + 1}{2}\]
    4. Applied associate-+l-48.3

      \[\leadsto \frac{\color{blue}{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}}{2}\]
    5. Taylor expanded around inf 18.1

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

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 4012978693.971179:\\ \;\;\;\;\frac{e^{\sqrt[3]{{\left(\log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}^{3}}}}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\left(\frac{\frac{4}{\alpha}}{\alpha} + \frac{-8}{{\alpha}^{3}}\right) + \frac{-2}{\alpha}\right)}{2}\\ \end{array}\]

Reproduce

herbie shell --seed 2020034 
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/1"
  :precision binary64
  :pre (and (> alpha -1) (> beta -1))
  (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))