Average Error: 3.7 → 1.5
Time: 43.1s
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}\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0} \le 0.08636743088546808:\\ \;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\left(\left(\beta \cdot \sqrt{\frac{1}{2}} + \sqrt{\frac{1}{2}} \cdot \alpha\right) + \sqrt{\frac{1}{2}} \cdot 1.0\right) - \left(\frac{\beta}{\sqrt{\frac{1}{2}}} \cdot 0.125 + \left(\alpha \cdot \sqrt{\frac{1}{8}}\right) \cdot 0.5\right)}{2 + \left(\beta + \alpha\right)}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}} \cdot \frac{\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.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}\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0} \le 0.08636743088546808:\\
\;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{\left(\left(\beta \cdot \sqrt{\frac{1}{2}} + \sqrt{\frac{1}{2}} \cdot \alpha\right) + \sqrt{\frac{1}{2}} \cdot 1.0\right) - \left(\frac{\beta}{\sqrt{\frac{1}{2}}} \cdot 0.125 + \left(\alpha \cdot \sqrt{\frac{1}{8}}\right) \cdot 0.5\right)}{2 + \left(\beta + \alpha\right)}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}} \cdot \frac{\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}}\\

\end{array}
double f(double alpha, double beta) {
        double r2525999 = alpha;
        double r2526000 = beta;
        double r2526001 = r2525999 + r2526000;
        double r2526002 = r2526000 * r2525999;
        double r2526003 = r2526001 + r2526002;
        double r2526004 = 1.0;
        double r2526005 = r2526003 + r2526004;
        double r2526006 = 2.0;
        double r2526007 = 1.0;
        double r2526008 = r2526006 * r2526007;
        double r2526009 = r2526001 + r2526008;
        double r2526010 = r2526005 / r2526009;
        double r2526011 = r2526010 / r2526009;
        double r2526012 = r2526009 + r2526004;
        double r2526013 = r2526011 / r2526012;
        return r2526013;
}

double f(double alpha, double beta) {
        double r2526014 = 1.0;
        double r2526015 = alpha;
        double r2526016 = beta;
        double r2526017 = r2526015 * r2526016;
        double r2526018 = r2526016 + r2526015;
        double r2526019 = r2526017 + r2526018;
        double r2526020 = r2526014 + r2526019;
        double r2526021 = 2.0;
        double r2526022 = r2526021 + r2526018;
        double r2526023 = r2526020 / r2526022;
        double r2526024 = r2526023 / r2526022;
        double r2526025 = r2526022 + r2526014;
        double r2526026 = r2526024 / r2526025;
        double r2526027 = 0.08636743088546808;
        bool r2526028 = r2526026 <= r2526027;
        double r2526029 = 0.5;
        double r2526030 = sqrt(r2526029);
        double r2526031 = r2526016 * r2526030;
        double r2526032 = r2526030 * r2526015;
        double r2526033 = r2526031 + r2526032;
        double r2526034 = r2526030 * r2526014;
        double r2526035 = r2526033 + r2526034;
        double r2526036 = r2526016 / r2526030;
        double r2526037 = 0.125;
        double r2526038 = r2526036 * r2526037;
        double r2526039 = 0.125;
        double r2526040 = sqrt(r2526039);
        double r2526041 = r2526015 * r2526040;
        double r2526042 = 0.5;
        double r2526043 = r2526041 * r2526042;
        double r2526044 = r2526038 + r2526043;
        double r2526045 = r2526035 - r2526044;
        double r2526046 = r2526045 / r2526022;
        double r2526047 = sqrt(r2526025);
        double r2526048 = r2526046 / r2526047;
        double r2526049 = 1.0;
        double r2526050 = sqrt(r2526022);
        double r2526051 = r2526049 / r2526050;
        double r2526052 = r2526051 / r2526047;
        double r2526053 = r2526048 * r2526052;
        double r2526054 = r2526028 ? r2526026 : r2526053;
        return r2526054;
}

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 beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0)) < 0.08636743088546808

    1. Initial program 0.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}\]

    if 0.08636743088546808 < (/ (/ (/ (+ (+ (+ alpha beta) (* beta alpha)) 1.0) (+ (+ alpha beta) (* 2 1))) (+ (+ alpha beta) (* 2 1))) (+ (+ (+ alpha beta) (* 2 1)) 1.0))

    1. Initial program 61.7

      \[\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 add-sqr-sqrt61.8

      \[\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}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}}\]
    4. Applied *-un-lft-identity61.8

      \[\leadsto \frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\color{blue}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
    5. Applied add-sqr-sqrt61.8

      \[\leadsto \frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\color{blue}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1} \cdot \sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
    6. Applied *-un-lft-identity61.8

      \[\leadsto \frac{\frac{\frac{\color{blue}{1 \cdot \left(\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0\right)}}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1} \cdot \sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
    7. Applied times-frac61.8

      \[\leadsto \frac{\frac{\color{blue}{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}} \cdot \frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}}{1 \cdot \left(\left(\alpha + \beta\right) + 2 \cdot 1\right)}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
    8. Applied times-frac61.8

      \[\leadsto \frac{\color{blue}{\frac{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{1} \cdot \frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0} \cdot \sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
    9. Applied times-frac61.8

      \[\leadsto \color{blue}{\frac{\frac{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}} \cdot \frac{\frac{\frac{\left(\left(\alpha + \beta\right) + \beta \cdot \alpha\right) + 1.0}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}}\]
    10. Taylor expanded around 0 23.9

      \[\leadsto \frac{\frac{\frac{1}{\sqrt{\left(\alpha + \beta\right) + 2 \cdot 1}}}{1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}} \cdot \frac{\frac{\color{blue}{\left(1.0 \cdot \sqrt{\frac{1}{2}} + \left(\beta \cdot \sqrt{\frac{1}{2}} + \sqrt{\frac{1}{2}} \cdot \alpha\right)\right) - \left(0.125 \cdot \frac{\beta}{\sqrt{\frac{1}{2}}} + 0.5 \cdot \left(\sqrt{\frac{1}{8}} \cdot \alpha\right)\right)}}{\left(\alpha + \beta\right) + 2 \cdot 1}}{\sqrt{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1.0}}\]
  3. Recombined 2 regimes into one program.
  4. Final simplification1.5

    \[\leadsto \begin{array}{l} \mathbf{if}\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0} \le 0.08636743088546808:\\ \;\;\;\;\frac{\frac{\frac{1.0 + \left(\alpha \cdot \beta + \left(\beta + \alpha\right)\right)}{2 + \left(\beta + \alpha\right)}}{2 + \left(\beta + \alpha\right)}}{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{\left(\left(\beta \cdot \sqrt{\frac{1}{2}} + \sqrt{\frac{1}{2}} \cdot \alpha\right) + \sqrt{\frac{1}{2}} \cdot 1.0\right) - \left(\frac{\beta}{\sqrt{\frac{1}{2}}} \cdot 0.125 + \left(\alpha \cdot \sqrt{\frac{1}{8}}\right) \cdot 0.5\right)}{2 + \left(\beta + \alpha\right)}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}} \cdot \frac{\frac{1}{\sqrt{2 + \left(\beta + \alpha\right)}}}{\sqrt{\left(2 + \left(\beta + \alpha\right)\right) + 1.0}}\\ \end{array}\]

Reproduce

herbie shell --seed 2019156 
(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)))