Average Error: 16.3 → 5.8
Time: 17.4s
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 7316578.6943023018538951873779296875:\\ \;\;\;\;\frac{\beta \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} + 1\right) - \left(\left(\alpha + \beta\right) + 2\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} \cdot \frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1 \cdot 1\right)}{2 \cdot \left(\left(\left(\alpha + \beta\right) + 2\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} + 1\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{1}{{\alpha}^{2}} \cdot \left(4 - \frac{8}{\alpha}\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 7316578.6943023018538951873779296875:\\
\;\;\;\;\frac{\beta \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} + 1\right) - \left(\left(\alpha + \beta\right) + 2\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} \cdot \frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1 \cdot 1\right)}{2 \cdot \left(\left(\left(\alpha + \beta\right) + 2\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} + 1\right)\right)}\\

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

\end{array}
double f(double alpha, double beta) {
        double r56681 = beta;
        double r56682 = alpha;
        double r56683 = r56681 - r56682;
        double r56684 = r56682 + r56681;
        double r56685 = 2.0;
        double r56686 = r56684 + r56685;
        double r56687 = r56683 / r56686;
        double r56688 = 1.0;
        double r56689 = r56687 + r56688;
        double r56690 = r56689 / r56685;
        return r56690;
}

double f(double alpha, double beta) {
        double r56691 = alpha;
        double r56692 = 7316578.694302302;
        bool r56693 = r56691 <= r56692;
        double r56694 = beta;
        double r56695 = r56691 + r56694;
        double r56696 = 2.0;
        double r56697 = r56695 + r56696;
        double r56698 = r56691 / r56697;
        double r56699 = 1.0;
        double r56700 = r56698 + r56699;
        double r56701 = r56694 * r56700;
        double r56702 = r56698 * r56698;
        double r56703 = r56699 * r56699;
        double r56704 = r56702 - r56703;
        double r56705 = r56697 * r56704;
        double r56706 = r56701 - r56705;
        double r56707 = r56697 * r56700;
        double r56708 = r56696 * r56707;
        double r56709 = r56706 / r56708;
        double r56710 = r56694 / r56697;
        double r56711 = 1.0;
        double r56712 = 2.0;
        double r56713 = pow(r56691, r56712);
        double r56714 = r56711 / r56713;
        double r56715 = 4.0;
        double r56716 = 8.0;
        double r56717 = r56716 / r56691;
        double r56718 = r56715 - r56717;
        double r56719 = r56714 * r56718;
        double r56720 = -r56696;
        double r56721 = r56720 / r56691;
        double r56722 = r56719 + r56721;
        double r56723 = r56710 - r56722;
        double r56724 = r56723 / r56696;
        double r56725 = r56693 ? r56709 : r56724;
        return r56725;
}

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 < 7316578.694302302

    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 flip--0.1

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

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

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

    if 7316578.694302302 < alpha

    1. Initial program 50.1

      \[\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}\]
    2. Using strategy rm
    3. Applied div-sub50.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-48.6

      \[\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-log-exp48.6

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - \color{blue}{\log \left(e^{1}\right)}\right)}{2}\]
    7. Applied add-log-exp48.6

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\color{blue}{\log \left(e^{\frac{\alpha}{\left(\alpha + \beta\right) + 2}}\right)} - \log \left(e^{1}\right)\right)}{2}\]
    8. Applied diff-log48.6

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

      \[\leadsto \frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \log \color{blue}{\left(e^{\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1}\right)}}{2}\]
    10. Taylor expanded around inf 17.7

      \[\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}\]
    11. Simplified17.7

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

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

Reproduce

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