Average Error: 16.1 → 6.0
Time: 21.9s
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 234711.6509180443244986236095428466796875:\\ \;\;\;\;e^{\log \left(\frac{\frac{\beta}{2 + \left(\beta + \alpha\right)} - \mathsf{fma}\left(\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}, \frac{\alpha}{\sqrt{2 + \left(\beta + \alpha\right)}}, -1\right)}{2}\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\beta}{2 + \left(\beta + \alpha\right)} - \left(\frac{\frac{4}{\alpha}}{\alpha} - \left(\frac{8}{\left(\alpha \cdot \alpha\right) \cdot \alpha} + \frac{2}{\alpha}\right)\right)}{2}\\ \end{array}\]
\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}
\begin{array}{l}
\mathbf{if}\;\alpha \le 234711.6509180443244986236095428466796875:\\
\;\;\;\;e^{\log \left(\frac{\frac{\beta}{2 + \left(\beta + \alpha\right)} - \mathsf{fma}\left(\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}, \frac{\alpha}{\sqrt{2 + \left(\beta + \alpha\right)}}, -1\right)}{2}\right)}\\

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

\end{array}
double f(double alpha, double beta) {
        double r4567606 = beta;
        double r4567607 = alpha;
        double r4567608 = r4567606 - r4567607;
        double r4567609 = r4567607 + r4567606;
        double r4567610 = 2.0;
        double r4567611 = r4567609 + r4567610;
        double r4567612 = r4567608 / r4567611;
        double r4567613 = 1.0;
        double r4567614 = r4567612 + r4567613;
        double r4567615 = r4567614 / r4567610;
        return r4567615;
}

double f(double alpha, double beta) {
        double r4567616 = alpha;
        double r4567617 = 234711.65091804432;
        bool r4567618 = r4567616 <= r4567617;
        double r4567619 = beta;
        double r4567620 = 2.0;
        double r4567621 = r4567619 + r4567616;
        double r4567622 = r4567620 + r4567621;
        double r4567623 = r4567619 / r4567622;
        double r4567624 = 1.0;
        double r4567625 = sqrt(r4567622);
        double r4567626 = r4567624 / r4567625;
        double r4567627 = r4567616 / r4567625;
        double r4567628 = 1.0;
        double r4567629 = -r4567628;
        double r4567630 = fma(r4567626, r4567627, r4567629);
        double r4567631 = r4567623 - r4567630;
        double r4567632 = r4567631 / r4567620;
        double r4567633 = log(r4567632);
        double r4567634 = exp(r4567633);
        double r4567635 = 4.0;
        double r4567636 = r4567635 / r4567616;
        double r4567637 = r4567636 / r4567616;
        double r4567638 = 8.0;
        double r4567639 = r4567616 * r4567616;
        double r4567640 = r4567639 * r4567616;
        double r4567641 = r4567638 / r4567640;
        double r4567642 = r4567620 / r4567616;
        double r4567643 = r4567641 + r4567642;
        double r4567644 = r4567637 - r4567643;
        double r4567645 = r4567623 - r4567644;
        double r4567646 = r4567645 / r4567620;
        double r4567647 = r4567618 ? r4567634 : r4567646;
        return r4567647;
}

Error

Bits error versus alpha

Bits error versus beta

Derivation

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

    1. Initial program 0.0

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

      \[\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.0

      \[\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.0

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

      \[\leadsto e^{\log \left(\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\alpha}{\color{blue}{\sqrt{\left(\alpha + \beta\right) + 2} \cdot \sqrt{\left(\alpha + \beta\right) + 2}}} - 1\right)}{2}\right)}\]
    9. Applied *-un-lft-identity0.0

      \[\leadsto e^{\log \left(\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\frac{\color{blue}{1 \cdot \alpha}}{\sqrt{\left(\alpha + \beta\right) + 2} \cdot \sqrt{\left(\alpha + \beta\right) + 2}} - 1\right)}{2}\right)}\]
    10. Applied times-frac0.1

      \[\leadsto e^{\log \left(\frac{\frac{\beta}{\left(\alpha + \beta\right) + 2} - \left(\color{blue}{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2}} \cdot \frac{\alpha}{\sqrt{\left(\alpha + \beta\right) + 2}}} - 1\right)}{2}\right)}\]
    11. Applied fma-neg0.1

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

    if 234711.65091804432 < alpha

    1. Initial program 48.7

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

      \[\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-47.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(\frac{\frac{4}{\alpha}}{\alpha} - \left(\frac{8}{\left(\alpha \cdot \alpha\right) \cdot \alpha} + \frac{2}{\alpha}\right)\right)}}{2}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification6.0

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

Reproduce

herbie shell --seed 2019174 +o rules:numerics
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/1"
  :pre (and (> alpha -1.0) (> beta -1.0))
  (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2.0)) 1.0) 2.0))