Average Error: 32.8 → 7.9
Time: 35.9s
Precision: 64
\[\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\]
\[\begin{array}{l} \mathbf{if}\;b_2 \le -1.3041251107393795 \cdot 10^{+48}:\\ \;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\ \mathbf{elif}\;b_2 \le -4.475531474079766 \cdot 10^{-133}:\\ \;\;\;\;\left(\frac{\frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}}{\sqrt[3]{a}} \cdot \left(\frac{\sqrt[3]{a}}{\left|\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}\right|} \cdot \frac{\sqrt[3]{a}}{\sqrt[3]{a}}\right)\right) \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}{\sqrt[3]{a}}\\ \mathbf{elif}\;b_2 \le 9.19242293018462 \cdot 10^{+63}:\\ \;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - c \cdot a}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - \frac{b_2}{a} \cdot 2\\ \end{array}\]
\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}
\begin{array}{l}
\mathbf{if}\;b_2 \le -1.3041251107393795 \cdot 10^{+48}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\

\mathbf{elif}\;b_2 \le -4.475531474079766 \cdot 10^{-133}:\\
\;\;\;\;\left(\frac{\frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}}{\sqrt[3]{a}} \cdot \left(\frac{\sqrt[3]{a}}{\left|\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}\right|} \cdot \frac{\sqrt[3]{a}}{\sqrt[3]{a}}\right)\right) \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}{\sqrt[3]{a}}\\

\mathbf{elif}\;b_2 \le 9.19242293018462 \cdot 10^{+63}:\\
\;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - c \cdot a}}}\\

\mathbf{else}:\\
\;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - \frac{b_2}{a} \cdot 2\\

\end{array}
double f(double a, double b_2, double c) {
        double r3765002 = b_2;
        double r3765003 = -r3765002;
        double r3765004 = r3765002 * r3765002;
        double r3765005 = a;
        double r3765006 = c;
        double r3765007 = r3765005 * r3765006;
        double r3765008 = r3765004 - r3765007;
        double r3765009 = sqrt(r3765008);
        double r3765010 = r3765003 - r3765009;
        double r3765011 = r3765010 / r3765005;
        return r3765011;
}

double f(double a, double b_2, double c) {
        double r3765012 = b_2;
        double r3765013 = -1.3041251107393795e+48;
        bool r3765014 = r3765012 <= r3765013;
        double r3765015 = -0.5;
        double r3765016 = c;
        double r3765017 = r3765016 / r3765012;
        double r3765018 = r3765015 * r3765017;
        double r3765019 = -4.475531474079766e-133;
        bool r3765020 = r3765012 <= r3765019;
        double r3765021 = a;
        double r3765022 = cbrt(r3765021);
        double r3765023 = r3765012 * r3765012;
        double r3765024 = r3765016 * r3765021;
        double r3765025 = r3765023 - r3765024;
        double r3765026 = sqrt(r3765025);
        double r3765027 = r3765026 - r3765012;
        double r3765028 = cbrt(r3765027);
        double r3765029 = sqrt(r3765028);
        double r3765030 = r3765022 / r3765029;
        double r3765031 = r3765030 / r3765022;
        double r3765032 = fabs(r3765028);
        double r3765033 = r3765022 / r3765032;
        double r3765034 = r3765022 / r3765022;
        double r3765035 = r3765033 * r3765034;
        double r3765036 = r3765031 * r3765035;
        double r3765037 = sqrt(r3765027);
        double r3765038 = r3765016 / r3765037;
        double r3765039 = r3765038 / r3765022;
        double r3765040 = r3765036 * r3765039;
        double r3765041 = 9.19242293018462e+63;
        bool r3765042 = r3765012 <= r3765041;
        double r3765043 = 1.0;
        double r3765044 = -r3765012;
        double r3765045 = r3765044 - r3765026;
        double r3765046 = r3765021 / r3765045;
        double r3765047 = r3765043 / r3765046;
        double r3765048 = 0.5;
        double r3765049 = r3765048 * r3765017;
        double r3765050 = r3765012 / r3765021;
        double r3765051 = 2.0;
        double r3765052 = r3765050 * r3765051;
        double r3765053 = r3765049 - r3765052;
        double r3765054 = r3765042 ? r3765047 : r3765053;
        double r3765055 = r3765020 ? r3765040 : r3765054;
        double r3765056 = r3765014 ? r3765018 : r3765055;
        return r3765056;
}

Error

Bits error versus a

Bits error versus b_2

Bits error versus c

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Split input into 4 regimes
  2. if b_2 < -1.3041251107393795e+48

    1. Initial program 55.8

      \[\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\]
    2. Taylor expanded around -inf 4.0

      \[\leadsto \color{blue}{\frac{-1}{2} \cdot \frac{c}{b_2}}\]

    if -1.3041251107393795e+48 < b_2 < -4.475531474079766e-133

    1. Initial program 37.7

      \[\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\]
    2. Using strategy rm
    3. Applied flip--37.8

      \[\leadsto \frac{\color{blue}{\frac{\left(-b_2\right) \cdot \left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c} \cdot \sqrt{b_2 \cdot b_2 - a \cdot c}}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}}}{a}\]
    4. Simplified15.4

      \[\leadsto \frac{\frac{\color{blue}{a \cdot c}}{\left(-b_2\right) + \sqrt{b_2 \cdot b_2 - a \cdot c}}}{a}\]
    5. Simplified15.4

      \[\leadsto \frac{\frac{a \cdot c}{\color{blue}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{a}\]
    6. Using strategy rm
    7. Applied add-cube-cbrt16.1

      \[\leadsto \frac{\frac{a \cdot c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\color{blue}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}}\]
    8. Applied add-sqr-sqrt16.1

      \[\leadsto \frac{\frac{a \cdot c}{\color{blue}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}\]
    9. Applied times-frac13.5

      \[\leadsto \frac{\color{blue}{\frac{a}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}} \cdot \frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}\]
    10. Applied times-frac9.4

      \[\leadsto \color{blue}{\frac{\frac{a}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}}\]
    11. Using strategy rm
    12. Applied add-cube-cbrt9.5

      \[\leadsto \frac{\frac{a}{\sqrt{\color{blue}{\left(\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}\right) \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]
    13. Applied sqrt-prod9.5

      \[\leadsto \frac{\frac{a}{\color{blue}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}} \cdot \sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]
    14. Applied add-cube-cbrt9.0

      \[\leadsto \frac{\frac{\color{blue}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}} \cdot \sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]
    15. Applied times-frac9.0

      \[\leadsto \frac{\color{blue}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}} \cdot \frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]
    16. Applied times-frac8.9

      \[\leadsto \color{blue}{\left(\frac{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2} \cdot \sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\sqrt[3]{a}} \cdot \frac{\frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\sqrt[3]{a}}\right)} \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]
    17. Simplified8.9

      \[\leadsto \left(\color{blue}{\left(\frac{\sqrt[3]{a}}{\sqrt[3]{a}} \cdot \frac{\sqrt[3]{a}}{\left|\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}\right|}\right)} \cdot \frac{\frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}}{\sqrt[3]{a}}\right) \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{\sqrt[3]{a}}\]

    if -4.475531474079766e-133 < b_2 < 9.19242293018462e+63

    1. Initial program 11.8

      \[\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\]
    2. Using strategy rm
    3. Applied clear-num12.0

      \[\leadsto \color{blue}{\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}}}\]

    if 9.19242293018462e+63 < b_2

    1. Initial program 38.1

      \[\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\]
    2. Taylor expanded around inf 4.5

      \[\leadsto \color{blue}{\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}}\]
  3. Recombined 4 regimes into one program.
  4. Final simplification7.9

    \[\leadsto \begin{array}{l} \mathbf{if}\;b_2 \le -1.3041251107393795 \cdot 10^{+48}:\\ \;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\ \mathbf{elif}\;b_2 \le -4.475531474079766 \cdot 10^{-133}:\\ \;\;\;\;\left(\frac{\frac{\sqrt[3]{a}}{\sqrt{\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}}{\sqrt[3]{a}} \cdot \left(\frac{\sqrt[3]{a}}{\left|\sqrt[3]{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}\right|} \cdot \frac{\sqrt[3]{a}}{\sqrt[3]{a}}\right)\right) \cdot \frac{\frac{c}{\sqrt{\sqrt{b_2 \cdot b_2 - c \cdot a} - b_2}}}{\sqrt[3]{a}}\\ \mathbf{elif}\;b_2 \le 9.19242293018462 \cdot 10^{+63}:\\ \;\;\;\;\frac{1}{\frac{a}{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - c \cdot a}}}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - \frac{b_2}{a} \cdot 2\\ \end{array}\]

Reproduce

herbie shell --seed 2019158 
(FPCore (a b_2 c)
  :name "NMSE problem 3.2.1"
  (/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))