Average Error: 16.0 → 6.0
Time: 4.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 1015227874.2528594:\\ \;\;\;\;\frac{e^{\log \left({\left(\frac{\beta}{\left(\alpha + \beta\right) + 2}\right)}^{3} - {\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}^{3}\right) - \log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \frac{\beta}{\left(\alpha + \beta\right) + 2} + \left(\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) + \frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}}{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 1015227874.2528594:\\
\;\;\;\;\frac{e^{\log \left({\left(\frac{\beta}{\left(\alpha + \beta\right) + 2}\right)}^{3} - {\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}^{3}\right) - \log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \frac{\beta}{\left(\alpha + \beta\right) + 2} + \left(\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) + \frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}}{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 r93158 = beta;
        double r93159 = alpha;
        double r93160 = r93158 - r93159;
        double r93161 = r93159 + r93158;
        double r93162 = 2.0;
        double r93163 = r93161 + r93162;
        double r93164 = r93160 / r93163;
        double r93165 = 1.0;
        double r93166 = r93164 + r93165;
        double r93167 = r93166 / r93162;
        return r93167;
}

double f(double alpha, double beta) {
        double r93168 = alpha;
        double r93169 = 1015227874.2528594;
        bool r93170 = r93168 <= r93169;
        double r93171 = beta;
        double r93172 = r93168 + r93171;
        double r93173 = 2.0;
        double r93174 = r93172 + r93173;
        double r93175 = r93171 / r93174;
        double r93176 = 3.0;
        double r93177 = pow(r93175, r93176);
        double r93178 = r93168 / r93174;
        double r93179 = 1.0;
        double r93180 = r93178 - r93179;
        double r93181 = pow(r93180, r93176);
        double r93182 = r93177 - r93181;
        double r93183 = log(r93182);
        double r93184 = r93175 * r93175;
        double r93185 = r93180 * r93180;
        double r93186 = r93175 * r93180;
        double r93187 = r93185 + r93186;
        double r93188 = r93184 + r93187;
        double r93189 = log(r93188);
        double r93190 = r93183 - r93189;
        double r93191 = exp(r93190);
        double r93192 = r93191 / r93173;
        double r93193 = 4.0;
        double r93194 = r93193 / r93168;
        double r93195 = r93194 / r93168;
        double r93196 = 8.0;
        double r93197 = -r93196;
        double r93198 = pow(r93168, r93176);
        double r93199 = r93197 / r93198;
        double r93200 = r93195 + r93199;
        double r93201 = -r93173;
        double r93202 = r93201 / r93168;
        double r93203 = r93200 + r93202;
        double r93204 = r93175 - r93203;
        double r93205 = r93204 / r93173;
        double r93206 = r93170 ? r93192 : r93205;
        return r93206;
}

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

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

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

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

    if 1015227874.2528594 < alpha

    1. Initial program 50.3

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

      \[\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. Taylor expanded around inf 18.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}\]
    6. Simplified18.7

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

    \[\leadsto \begin{array}{l} \mathbf{if}\;\alpha \le 1015227874.2528594:\\ \;\;\;\;\frac{e^{\log \left({\left(\frac{\beta}{\left(\alpha + \beta\right) + 2}\right)}^{3} - {\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)}^{3}\right) - \log \left(\frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \frac{\beta}{\left(\alpha + \beta\right) + 2} + \left(\left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right) + \frac{\beta}{\left(\alpha + \beta\right) + 2} \cdot \left(\frac{\alpha}{\left(\alpha + \beta\right) + 2} - 1\right)\right)\right)}}{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 2020047 
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/1"
  :precision binary64
  :pre (and (> alpha -1) (> beta -1))
  (/ (+ (/ (- beta alpha) (+ (+ alpha beta) 2)) 1) 2))