Average Error: 3.8 → 2.3
Time: 52.0s
Precision: 64
\[\alpha \gt -1 \land \beta \gt -1\]
\[\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\]
\[\begin{array}{l} \mathbf{if}\;\beta \le 1.135890439829061432666115217318141286165 \cdot 10^{184}:\\ \;\;\;\;\frac{\frac{-\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{-\left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\ \mathbf{else}:\\ \;\;\;\;0\\ \end{array}\]
\frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}
\begin{array}{l}
\mathbf{if}\;\beta \le 1.135890439829061432666115217318141286165 \cdot 10^{184}:\\
\;\;\;\;\frac{\frac{-\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1}{\left(\alpha + \beta\right) + 2 \cdot 1}}{-\left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\\

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

\end{array}
double f(double alpha, double beta) {
        double r150346 = alpha;
        double r150347 = beta;
        double r150348 = r150346 + r150347;
        double r150349 = r150347 * r150346;
        double r150350 = r150348 + r150349;
        double r150351 = 1.0;
        double r150352 = r150350 + r150351;
        double r150353 = 2.0;
        double r150354 = r150353 * r150351;
        double r150355 = r150348 + r150354;
        double r150356 = r150352 / r150355;
        double r150357 = r150356 / r150355;
        double r150358 = r150355 + r150351;
        double r150359 = r150357 / r150358;
        return r150359;
}

double f(double alpha, double beta) {
        double r150360 = beta;
        double r150361 = 1.1358904398290614e+184;
        bool r150362 = r150360 <= r150361;
        double r150363 = alpha;
        double r150364 = r150363 + r150360;
        double r150365 = r150360 * r150363;
        double r150366 = r150364 + r150365;
        double r150367 = 1.0;
        double r150368 = r150366 + r150367;
        double r150369 = 2.0;
        double r150370 = r150369 * r150367;
        double r150371 = r150364 + r150370;
        double r150372 = r150368 / r150371;
        double r150373 = -r150372;
        double r150374 = -r150371;
        double r150375 = r150373 / r150374;
        double r150376 = r150371 + r150367;
        double r150377 = r150375 / r150376;
        double r150378 = 0.0;
        double r150379 = r150362 ? r150377 : r150378;
        return r150379;
}

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 < 1.1358904398290614e+184

    1. Initial program 1.6

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

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

    if 1.1358904398290614e+184 < beta

    1. Initial program 17.9

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

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

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

Reproduce

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