Average Error: 16.3 → 6.8
Time: 6.2s
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 1.20775003977996259 \cdot 10^{40}:\\ \;\;\;\;\frac{\mathsf{fma}\left(\beta, \frac{1}{\left(\alpha + \beta\right) + 2}, -\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)}{2}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}} - \mathsf{fma}\left(4, \frac{1}{{\alpha}^{2}}, -\mathsf{fma}\left(2, \frac{1}{\alpha}, 8 \cdot \frac{1}{{\alpha}^{3}}\right)\right)}{2}\\ \end{array}\]
\frac{\frac{\beta - \alpha}{\left(\alpha + \beta\right) + 2} + 1}{2}
\begin{array}{l}
\mathbf{if}\;\alpha \le 1.20775003977996259 \cdot 10^{40}:\\
\;\;\;\;\frac{\mathsf{fma}\left(\beta, \frac{1}{\left(\alpha + \beta\right) + 2}, -\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)}{2}\\

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

\end{array}
double f(double alpha, double beta) {
        double r95168 = beta;
        double r95169 = alpha;
        double r95170 = r95168 - r95169;
        double r95171 = r95169 + r95168;
        double r95172 = 2.0;
        double r95173 = r95171 + r95172;
        double r95174 = r95170 / r95173;
        double r95175 = 1.0;
        double r95176 = r95174 + r95175;
        double r95177 = r95176 / r95172;
        return r95177;
}

double f(double alpha, double beta) {
        double r95178 = alpha;
        double r95179 = 1.2077500397799626e+40;
        bool r95180 = r95178 <= r95179;
        double r95181 = beta;
        double r95182 = 1.0;
        double r95183 = r95178 + r95181;
        double r95184 = 2.0;
        double r95185 = r95183 + r95184;
        double r95186 = r95182 / r95185;
        double r95187 = r95178 / r95185;
        double r95188 = 1.0;
        double r95189 = r95187 - r95188;
        double r95190 = -r95189;
        double r95191 = fma(r95181, r95186, r95190);
        double r95192 = r95191 / r95184;
        double r95193 = cbrt(r95181);
        double r95194 = r95193 * r95193;
        double r95195 = cbrt(r95185);
        double r95196 = r95195 * r95195;
        double r95197 = r95194 / r95196;
        double r95198 = r95193 / r95195;
        double r95199 = r95197 * r95198;
        double r95200 = 4.0;
        double r95201 = 2.0;
        double r95202 = pow(r95178, r95201);
        double r95203 = r95182 / r95202;
        double r95204 = r95182 / r95178;
        double r95205 = 8.0;
        double r95206 = 3.0;
        double r95207 = pow(r95178, r95206);
        double r95208 = r95182 / r95207;
        double r95209 = r95205 * r95208;
        double r95210 = fma(r95184, r95204, r95209);
        double r95211 = -r95210;
        double r95212 = fma(r95200, r95203, r95211);
        double r95213 = r95199 - r95212;
        double r95214 = r95213 / r95184;
        double r95215 = r95180 ? r95192 : r95214;
        return r95215;
}

Error

Bits error versus alpha

Bits error versus beta

Derivation

  1. Split input into 2 regimes
  2. if alpha < 1.2077500397799626e+40

    1. Initial program 1.9

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

      \[\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 div-inv1.9

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

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

    if 1.2077500397799626e+40 < alpha

    1. Initial program 50.6

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

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

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

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

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

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

      \[\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. Using strategy rm
    11. Applied add-cube-cbrt49.0

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

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

      \[\leadsto \frac{\color{blue}{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2}}} - \log \left(e^{\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1}\right)}{2}\]
    14. Taylor expanded around inf 18.5

      \[\leadsto \frac{\frac{\sqrt[3]{\beta} \cdot \sqrt[3]{\beta}}{\sqrt[3]{\left(\alpha + \beta\right) + 2} \cdot \sqrt[3]{\left(\alpha + \beta\right) + 2}} \cdot \frac{\sqrt[3]{\beta}}{\sqrt[3]{\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}\]
    15. Simplified18.5

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

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

Reproduce

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