Average Error: 3.6 → 2.3
Time: 1.5m
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1\]
\[\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\]
\[\begin{array}{l} \mathbf{if}\;\beta \le 3.826019260484367 \cdot 10^{+164}:\\ \;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\alpha + \beta\right)\right)}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + \left(2 + 1.0\right)}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}
\begin{array}{l}
\mathbf{if}\;\beta \le 3.826019260484367 \cdot 10^{+164}:\\
\;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\alpha + \beta\right)\right)}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + \left(2 + 1.0\right)}\\

\mathbf{else}:\\
\;\;\;\;0\\

\end{array}
double f(double alpha, double beta) {
        double r7572266 = alpha;
        double r7572267 = beta;
        double r7572268 = r7572266 + r7572267;
        double r7572269 = r7572267 * r7572266;
        double r7572270 = r7572268 + r7572269;
        double r7572271 = 1.0;
        double r7572272 = r7572270 + r7572271;
        double r7572273 = 2.0;
        double r7572274 = 1.0;
        double r7572275 = r7572273 * r7572274;
        double r7572276 = r7572268 + r7572275;
        double r7572277 = r7572272 / r7572276;
        double r7572278 = r7572277 / r7572276;
        double r7572279 = r7572276 + r7572271;
        double r7572280 = r7572278 / r7572279;
        return r7572280;
}

double f(double alpha, double beta) {
        double r7572281 = beta;
        double r7572282 = 3.826019260484367e+164;
        bool r7572283 = r7572281 <= r7572282;
        double r7572284 = 1.0;
        double r7572285 = alpha;
        double r7572286 = r7572285 * r7572281;
        double r7572287 = r7572285 + r7572281;
        double r7572288 = r7572286 + r7572287;
        double r7572289 = r7572284 + r7572288;
        double r7572290 = 2.0;
        double r7572291 = r7572287 + r7572290;
        double r7572292 = r7572289 / r7572291;
        double r7572293 = r7572292 / r7572291;
        double r7572294 = r7572290 + r7572284;
        double r7572295 = r7572287 + r7572294;
        double r7572296 = r7572293 / r7572295;
        double r7572297 = 0.0;
        double r7572298 = r7572283 ? r7572296 : r7572297;
        return r7572298;
}

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 beta < 3.826019260484367e+164

    1. Initial program 1.3

      \[\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\]
    2. Using strategy rm
    3. Applied associate-+l+1.3

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

    if 3.826019260484367e+164 < beta

    1. Initial program 16.4

      \[\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}\]
    2. Taylor expanded around inf 7.8

      \[\leadsto \color{blue}{0}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification2.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;\beta \le 3.826019260484367 \cdot 10^{+164}:\\ \;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\alpha + \beta\right)\right)}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + 2}}{\left(\alpha + \beta\right) + \left(2 + 1.0\right)}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]

Reproduce

herbie shell --seed 2019158 
(FPCore (alpha beta)
  :name "Octave 3.8, jcobi/3"
  :pre (and (> alpha -1) (> beta -1))
  (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)))