Average Error: 4.2 → 1.3
Time: 1.3m
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}\;\alpha \le 1.80402895061238771139523421196263224057 \cdot 10^{158}:\\ \;\;\;\;\sqrt{\frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)} \cdot \frac{\left(\beta + \left(\alpha + 1\right)\right) + \beta \cdot \alpha}{\alpha + \left(\beta + 1 \cdot 2\right)}} \cdot \frac{\sqrt{\left(\left(\beta + \left(\alpha + 1\right)\right) + \beta \cdot \alpha\right) \cdot \frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)}}}{\sqrt{\alpha + \left(\beta + 1 \cdot 2\right)} \cdot \left(1 + \left(\alpha + \left(\beta + 1 \cdot 2\right)\right)\right)}\\ \mathbf{else}:\\ \;\;\;\;\frac{\frac{1}{\left(2 + \frac{\beta}{\alpha}\right) + \frac{\alpha}{\beta}}}{1 + \left(1 \cdot 2 + \left(\alpha + \beta\right)\right)}\\ \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}\;\alpha \le 1.80402895061238771139523421196263224057 \cdot 10^{158}:\\
\;\;\;\;\sqrt{\frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)} \cdot \frac{\left(\beta + \left(\alpha + 1\right)\right) + \beta \cdot \alpha}{\alpha + \left(\beta + 1 \cdot 2\right)}} \cdot \frac{\sqrt{\left(\left(\beta + \left(\alpha + 1\right)\right) + \beta \cdot \alpha\right) \cdot \frac{1}{\alpha + \left(\beta + 1 \cdot 2\right)}}}{\sqrt{\alpha + \left(\beta + 1 \cdot 2\right)} \cdot \left(1 + \left(\alpha + \left(\beta + 1 \cdot 2\right)\right)\right)}\\

\mathbf{else}:\\
\;\;\;\;\frac{\frac{1}{\left(2 + \frac{\beta}{\alpha}\right) + \frac{\alpha}{\beta}}}{1 + \left(1 \cdot 2 + \left(\alpha + \beta\right)\right)}\\

\end{array}
double f(double alpha, double beta) {
        double r210792 = alpha;
        double r210793 = beta;
        double r210794 = r210792 + r210793;
        double r210795 = r210793 * r210792;
        double r210796 = r210794 + r210795;
        double r210797 = 1.0;
        double r210798 = r210796 + r210797;
        double r210799 = 2.0;
        double r210800 = r210799 * r210797;
        double r210801 = r210794 + r210800;
        double r210802 = r210798 / r210801;
        double r210803 = r210802 / r210801;
        double r210804 = r210801 + r210797;
        double r210805 = r210803 / r210804;
        return r210805;
}

double f(double alpha, double beta) {
        double r210806 = alpha;
        double r210807 = 1.8040289506123877e+158;
        bool r210808 = r210806 <= r210807;
        double r210809 = 1.0;
        double r210810 = beta;
        double r210811 = 1.0;
        double r210812 = 2.0;
        double r210813 = r210811 * r210812;
        double r210814 = r210810 + r210813;
        double r210815 = r210806 + r210814;
        double r210816 = r210809 / r210815;
        double r210817 = r210806 + r210811;
        double r210818 = r210810 + r210817;
        double r210819 = r210810 * r210806;
        double r210820 = r210818 + r210819;
        double r210821 = r210820 / r210815;
        double r210822 = r210816 * r210821;
        double r210823 = sqrt(r210822);
        double r210824 = r210820 * r210816;
        double r210825 = sqrt(r210824);
        double r210826 = sqrt(r210815);
        double r210827 = r210811 + r210815;
        double r210828 = r210826 * r210827;
        double r210829 = r210825 / r210828;
        double r210830 = r210823 * r210829;
        double r210831 = 2.0;
        double r210832 = r210810 / r210806;
        double r210833 = r210831 + r210832;
        double r210834 = r210806 / r210810;
        double r210835 = r210833 + r210834;
        double r210836 = r210809 / r210835;
        double r210837 = r210806 + r210810;
        double r210838 = r210813 + r210837;
        double r210839 = r210811 + r210838;
        double r210840 = r210836 / r210839;
        double r210841 = r210808 ? r210830 : r210840;
        return r210841;
}

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 < 1.8040289506123877e+158

    1. Initial program 1.4

      \[\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 clear-num1.4

      \[\leadsto \frac{\color{blue}{\frac{1}{\frac{\left(\alpha + \beta\right) + 2 \cdot 1}{\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) + 1}\]
    4. Simplified1.4

      \[\leadsto \frac{\frac{1}{\color{blue}{\frac{\alpha + \left(\beta + 2 \cdot 1\right)}{\frac{\alpha \cdot \beta + \left(\left(\beta + \alpha\right) + 1\right)}{\alpha + \left(\beta + 2 \cdot 1\right)}}}}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\]
    5. Using strategy rm
    6. Applied *-un-lft-identity1.4

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

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

      \[\leadsto \color{blue}{\frac{\sqrt{\frac{1}{\frac{\alpha + \left(\beta + 2 \cdot 1\right)}{\frac{\alpha \cdot \beta + \left(\left(\beta + \alpha\right) + 1\right)}{\alpha + \left(\beta + 2 \cdot 1\right)}}}}}{1} \cdot \frac{\sqrt{\frac{1}{\frac{\alpha + \left(\beta + 2 \cdot 1\right)}{\frac{\alpha \cdot \beta + \left(\left(\beta + \alpha\right) + 1\right)}{\alpha + \left(\beta + 2 \cdot 1\right)}}}}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}}\]
    9. Simplified1.5

      \[\leadsto \color{blue}{\sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}}} \cdot \frac{\sqrt{\frac{1}{\frac{\alpha + \left(\beta + 2 \cdot 1\right)}{\frac{\alpha \cdot \beta + \left(\left(\beta + \alpha\right) + 1\right)}{\alpha + \left(\beta + 2 \cdot 1\right)}}}}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\]
    10. Simplified1.5

      \[\leadsto \sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}} \cdot \color{blue}{\frac{\sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}}}{\left(\alpha + \left(1 \cdot 2 + \beta\right)\right) + 1}}\]
    11. Using strategy rm
    12. Applied associate-*r/1.5

      \[\leadsto \sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}} \cdot \frac{\sqrt{\color{blue}{\frac{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \left(\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}}}}{\left(\alpha + \left(1 \cdot 2 + \beta\right)\right) + 1}\]
    13. Applied sqrt-div1.5

      \[\leadsto \sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}} \cdot \frac{\color{blue}{\frac{\sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \left(\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)\right)}}{\sqrt{\alpha + \left(1 \cdot 2 + \beta\right)}}}}{\left(\alpha + \left(1 \cdot 2 + \beta\right)\right) + 1}\]
    14. Applied associate-/l/1.5

      \[\leadsto \sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \frac{\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)}{\alpha + \left(1 \cdot 2 + \beta\right)}} \cdot \color{blue}{\frac{\sqrt{\frac{1}{\alpha + \left(1 \cdot 2 + \beta\right)} \cdot \left(\alpha \cdot \beta + \left(\beta + \left(\alpha + 1\right)\right)\right)}}{\left(\left(\alpha + \left(1 \cdot 2 + \beta\right)\right) + 1\right) \cdot \sqrt{\alpha + \left(1 \cdot 2 + \beta\right)}}}\]
    15. Simplified1.5

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

    if 1.8040289506123877e+158 < alpha

    1. Initial program 18.0

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

      \[\leadsto \frac{\color{blue}{\frac{1}{\frac{\left(\alpha + \beta\right) + 2 \cdot 1}{\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) + 1}\]
    4. Simplified18.0

      \[\leadsto \frac{\frac{1}{\color{blue}{\frac{\alpha + \left(\beta + 2 \cdot 1\right)}{\frac{\alpha \cdot \beta + \left(\left(\beta + \alpha\right) + 1\right)}{\alpha + \left(\beta + 2 \cdot 1\right)}}}}}{\left(\left(\alpha + \beta\right) + 2 \cdot 1\right) + 1}\]
    5. Taylor expanded around inf 0.1

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

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

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

Reproduce

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