Average Error: 33.8 → 7.3
Time: 22.8s
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 -3.755118612359990099835323540998142276883 \cdot 10^{47}:\\ \;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\ \mathbf{elif}\;b_2 \le -1.415217774929248159542813179693576626283 \cdot 10^{-267}:\\ \;\;\;\;1 \cdot \left(\frac{\sqrt[3]{\sqrt[3]{a}} \cdot \sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c} \cdot \sqrt[3]{c}}} \cdot \frac{\frac{\sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c}}}}{\sqrt[3]{a}}\right)\\ \mathbf{elif}\;b_2 \le 3.561111989718156042582267854543789265968 \cdot 10^{98}:\\ \;\;\;\;\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}\\ \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 -3.755118612359990099835323540998142276883 \cdot 10^{47}:\\
\;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\

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

\mathbf{elif}\;b_2 \le 3.561111989718156042582267854543789265968 \cdot 10^{98}:\\
\;\;\;\;\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\

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

\end{array}
double f(double a, double b_2, double c) {
        double r42957 = b_2;
        double r42958 = -r42957;
        double r42959 = r42957 * r42957;
        double r42960 = a;
        double r42961 = c;
        double r42962 = r42960 * r42961;
        double r42963 = r42959 - r42962;
        double r42964 = sqrt(r42963);
        double r42965 = r42958 - r42964;
        double r42966 = r42965 / r42960;
        return r42966;
}

double f(double a, double b_2, double c) {
        double r42967 = b_2;
        double r42968 = -3.75511861235999e+47;
        bool r42969 = r42967 <= r42968;
        double r42970 = -0.5;
        double r42971 = c;
        double r42972 = r42971 / r42967;
        double r42973 = r42970 * r42972;
        double r42974 = -1.4152177749292482e-267;
        bool r42975 = r42967 <= r42974;
        double r42976 = 1.0;
        double r42977 = a;
        double r42978 = cbrt(r42977);
        double r42979 = cbrt(r42978);
        double r42980 = r42979 * r42979;
        double r42981 = r42967 * r42967;
        double r42982 = r42977 * r42971;
        double r42983 = r42981 - r42982;
        double r42984 = sqrt(r42983);
        double r42985 = r42984 - r42967;
        double r42986 = sqrt(r42985);
        double r42987 = cbrt(r42971);
        double r42988 = r42987 * r42987;
        double r42989 = r42986 / r42988;
        double r42990 = r42980 / r42989;
        double r42991 = r42986 / r42987;
        double r42992 = r42979 / r42991;
        double r42993 = r42992 / r42978;
        double r42994 = r42990 * r42993;
        double r42995 = r42976 * r42994;
        double r42996 = 3.561111989718156e+98;
        bool r42997 = r42967 <= r42996;
        double r42998 = -r42967;
        double r42999 = r42998 - r42984;
        double r43000 = r42999 / r42977;
        double r43001 = 0.5;
        double r43002 = r43001 * r42972;
        double r43003 = 2.0;
        double r43004 = r42967 / r42977;
        double r43005 = r43003 * r43004;
        double r43006 = r43002 - r43005;
        double r43007 = r42997 ? r43000 : r43006;
        double r43008 = r42975 ? r42995 : r43007;
        double r43009 = r42969 ? r42973 : r43008;
        return r43009;
}

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 < -3.75511861235999e+47

    1. Initial program 57.1

      \[\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 -3.75511861235999e+47 < b_2 < -1.4152177749292482e-267

    1. Initial program 30.3

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

      \[\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. Simplified16.7

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

      \[\leadsto \frac{\frac{0 + a \cdot c}{\color{blue}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}}{a}\]
    6. Using strategy rm
    7. Applied *-un-lft-identity16.7

      \[\leadsto \frac{\frac{0 + a \cdot c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\color{blue}{1 \cdot a}}\]
    8. Applied associate-/r*16.7

      \[\leadsto \color{blue}{\frac{\frac{\frac{0 + a \cdot c}{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{1}}{a}}\]
    9. Simplified14.0

      \[\leadsto \frac{\color{blue}{\frac{a}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{c}}}}{a}\]
    10. Using strategy rm
    11. Applied add-cube-cbrt14.7

      \[\leadsto \frac{\frac{a}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{c}}}{\color{blue}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}}\]
    12. Applied *-un-lft-identity14.7

      \[\leadsto \frac{\frac{a}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{\color{blue}{1 \cdot c}}}}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}\]
    13. Applied *-un-lft-identity14.7

      \[\leadsto \frac{\frac{a}{\frac{\color{blue}{1 \cdot \left(\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2\right)}}{1 \cdot c}}}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}\]
    14. Applied times-frac14.7

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

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

      \[\leadsto \frac{\color{blue}{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{\frac{1}{1}} \cdot \frac{\sqrt[3]{a}}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{c}}}}{\left(\sqrt[3]{a} \cdot \sqrt[3]{a}\right) \cdot \sqrt[3]{a}}\]
    17. Applied times-frac10.2

      \[\leadsto \color{blue}{\frac{\frac{\sqrt[3]{a} \cdot \sqrt[3]{a}}{\frac{1}{1}}}{\sqrt[3]{a} \cdot \sqrt[3]{a}} \cdot \frac{\frac{\sqrt[3]{a}}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{c}}}{\sqrt[3]{a}}}\]
    18. Simplified10.2

      \[\leadsto \color{blue}{1} \cdot \frac{\frac{\sqrt[3]{a}}{\frac{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}{c}}}{\sqrt[3]{a}}\]
    19. Using strategy rm
    20. Applied *-un-lft-identity10.2

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

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

      \[\leadsto 1 \cdot \frac{\frac{\sqrt[3]{a}}{\frac{\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]{c} \cdot \sqrt[3]{c}\right) \cdot \sqrt[3]{c}}}}{1 \cdot \sqrt[3]{a}}\]
    23. Applied times-frac11.1

      \[\leadsto 1 \cdot \frac{\frac{\sqrt[3]{a}}{\color{blue}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c} \cdot \sqrt[3]{c}} \cdot \frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c}}}}}{1 \cdot \sqrt[3]{a}}\]
    24. Applied add-cube-cbrt11.3

      \[\leadsto 1 \cdot \frac{\frac{\color{blue}{\left(\sqrt[3]{\sqrt[3]{a}} \cdot \sqrt[3]{\sqrt[3]{a}}\right) \cdot \sqrt[3]{\sqrt[3]{a}}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c} \cdot \sqrt[3]{c}} \cdot \frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c}}}}{1 \cdot \sqrt[3]{a}}\]
    25. Applied times-frac11.2

      \[\leadsto 1 \cdot \frac{\color{blue}{\frac{\sqrt[3]{\sqrt[3]{a}} \cdot \sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c} \cdot \sqrt[3]{c}}} \cdot \frac{\sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c}}}}}{1 \cdot \sqrt[3]{a}}\]
    26. Applied times-frac10.3

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

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

    if -1.4152177749292482e-267 < b_2 < 3.561111989718156e+98

    1. Initial program 9.9

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

    if 3.561111989718156e+98 < b_2

    1. Initial program 44.8

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

      \[\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.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;b_2 \le -3.755118612359990099835323540998142276883 \cdot 10^{47}:\\ \;\;\;\;\frac{-1}{2} \cdot \frac{c}{b_2}\\ \mathbf{elif}\;b_2 \le -1.415217774929248159542813179693576626283 \cdot 10^{-267}:\\ \;\;\;\;1 \cdot \left(\frac{\sqrt[3]{\sqrt[3]{a}} \cdot \sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c} \cdot \sqrt[3]{c}}} \cdot \frac{\frac{\sqrt[3]{\sqrt[3]{a}}}{\frac{\sqrt{\sqrt{b_2 \cdot b_2 - a \cdot c} - b_2}}{\sqrt[3]{c}}}}{\sqrt[3]{a}}\right)\\ \mathbf{elif}\;b_2 \le 3.561111989718156042582267854543789265968 \cdot 10^{98}:\\ \;\;\;\;\frac{\left(-b_2\right) - \sqrt{b_2 \cdot b_2 - a \cdot c}}{a}\\ \mathbf{else}:\\ \;\;\;\;\frac{1}{2} \cdot \frac{c}{b_2} - 2 \cdot \frac{b_2}{a}\\ \end{array}\]

Reproduce

herbie shell --seed 2019298 
(FPCore (a b_2 c)
  :name "quad2m (problem 3.2.1, negative)"
  :precision binary64
  (/ (- (- b_2) (sqrt (- (* b_2 b_2) (* a c)))) a))