Average Error: 18.9 → 7.3
Time: 12.6s
Precision: 64
\[\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
\[\begin{array}{l} \mathbf{if}\;b \le -1.4755018087753095 \cdot 10^{+152}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt[3]{\sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)} \cdot \left(b \cdot b - c \cdot \left(a \cdot 4\right)\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\\ \mathbf{elif}\;b \le -1.1253904323982412 \cdot 10^{-267}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\frac{c \cdot \left(a \cdot 4\right) + \left(b \cdot b - b \cdot b\right)}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}\\ \end{array}\\ \mathbf{elif}\;b \le 3.340270116328134 \cdot 10^{+83}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;e^{\log \left(\frac{c}{\frac{a}{b} \cdot c - b}\right)}\\ \end{array}\\ \mathbf{elif}\;b \ge 0:\\ \;\;\;\;\frac{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]
\begin{array}{l}
\mathbf{if}\;b \ge 0:\\
\;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\

\end{array}
\begin{array}{l}
\mathbf{if}\;b \le -1.4755018087753095 \cdot 10^{+152}:\\
\;\;\;\;\begin{array}{l}
\mathbf{if}\;b \ge 0:\\
\;\;\;\;\frac{\left(-b\right) - \sqrt[3]{\sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)} \cdot \left(b \cdot b - c \cdot \left(a \cdot 4\right)\right)}}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\

\end{array}\\

\mathbf{elif}\;b \le -1.1253904323982412 \cdot 10^{-267}:\\
\;\;\;\;\begin{array}{l}
\mathbf{if}\;b \ge 0:\\
\;\;\;\;\frac{\frac{c \cdot \left(a \cdot 4\right) + \left(b \cdot b - b \cdot b\right)}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{c \cdot 2}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}\\

\end{array}\\

\mathbf{elif}\;b \le 3.340270116328134 \cdot 10^{+83}:\\
\;\;\;\;\begin{array}{l}
\mathbf{if}\;b \ge 0:\\
\;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;e^{\log \left(\frac{c}{\frac{a}{b} \cdot c - b}\right)}\\

\end{array}\\

\mathbf{elif}\;b \ge 0:\\
\;\;\;\;\frac{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}{2 \cdot a}\\

\mathbf{else}:\\
\;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\

\end{array}
double f(double a, double b, double c) {
        double r714610 = b;
        double r714611 = 0.0;
        bool r714612 = r714610 >= r714611;
        double r714613 = -r714610;
        double r714614 = r714610 * r714610;
        double r714615 = 4.0;
        double r714616 = a;
        double r714617 = r714615 * r714616;
        double r714618 = c;
        double r714619 = r714617 * r714618;
        double r714620 = r714614 - r714619;
        double r714621 = sqrt(r714620);
        double r714622 = r714613 - r714621;
        double r714623 = 2.0;
        double r714624 = r714623 * r714616;
        double r714625 = r714622 / r714624;
        double r714626 = r714623 * r714618;
        double r714627 = r714613 + r714621;
        double r714628 = r714626 / r714627;
        double r714629 = r714612 ? r714625 : r714628;
        return r714629;
}

double f(double a, double b, double c) {
        double r714630 = b;
        double r714631 = -1.4755018087753095e+152;
        bool r714632 = r714630 <= r714631;
        double r714633 = 0.0;
        bool r714634 = r714630 >= r714633;
        double r714635 = -r714630;
        double r714636 = r714630 * r714630;
        double r714637 = c;
        double r714638 = a;
        double r714639 = 4.0;
        double r714640 = r714638 * r714639;
        double r714641 = r714637 * r714640;
        double r714642 = r714636 - r714641;
        double r714643 = sqrt(r714642);
        double r714644 = r714643 * r714642;
        double r714645 = cbrt(r714644);
        double r714646 = r714635 - r714645;
        double r714647 = 2.0;
        double r714648 = r714647 * r714638;
        double r714649 = r714646 / r714648;
        double r714650 = r714637 * r714647;
        double r714651 = r714630 / r714637;
        double r714652 = r714638 / r714651;
        double r714653 = r714652 - r714630;
        double r714654 = r714647 * r714653;
        double r714655 = r714650 / r714654;
        double r714656 = r714634 ? r714649 : r714655;
        double r714657 = -1.1253904323982412e-267;
        bool r714658 = r714630 <= r714657;
        double r714659 = r714636 - r714636;
        double r714660 = r714641 + r714659;
        double r714661 = r714635 + r714643;
        double r714662 = r714660 / r714661;
        double r714663 = r714662 / r714648;
        double r714664 = r714650 / r714661;
        double r714665 = r714634 ? r714663 : r714664;
        double r714666 = 3.340270116328134e+83;
        bool r714667 = r714630 <= r714666;
        double r714668 = r714635 - r714643;
        double r714669 = r714668 / r714648;
        double r714670 = r714638 / r714630;
        double r714671 = r714670 * r714637;
        double r714672 = r714671 - r714630;
        double r714673 = r714637 / r714672;
        double r714674 = log(r714673);
        double r714675 = exp(r714674);
        double r714676 = r714634 ? r714669 : r714675;
        double r714677 = r714654 / r714648;
        double r714678 = r714634 ? r714677 : r714655;
        double r714679 = r714667 ? r714676 : r714678;
        double r714680 = r714658 ? r714665 : r714679;
        double r714681 = r714632 ? r714656 : r714680;
        return r714681;
}

Error

Bits error versus a

Bits error versus b

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 < -1.4755018087753095e+152

    1. Initial program 36.6

      \[\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
    2. Taylor expanded around -inf 6.2

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \frac{a \cdot c}{b} - 2 \cdot b}}\\ \end{array}\]
    3. Simplified1.7

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    4. Using strategy rm
    5. Applied add-cbrt-cube1.7

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \color{blue}{\sqrt[3]{\left(\sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} \cdot \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}\right) \cdot \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]
    6. Simplified1.7

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt[3]{\color{blue}{\left(b \cdot b - \left(a \cdot 4\right) \cdot c\right) \cdot \sqrt{b \cdot b - \left(a \cdot 4\right) \cdot c}}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]

    if -1.4755018087753095e+152 < b < -1.1253904323982412e-267

    1. Initial program 7.1

      \[\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
    2. Using strategy rm
    3. Applied flip--7.1

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\color{blue}{\frac{\left(-b\right) \cdot \left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c} \cdot \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
    4. Simplified7.1

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\frac{\color{blue}{\left(b \cdot b - b \cdot b\right) + \left(4 \cdot a\right) \cdot c}}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]

    if -1.1253904323982412e-267 < b < 3.340270116328134e+83

    1. Initial program 9.0

      \[\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
    2. Taylor expanded around -inf 12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \frac{a \cdot c}{b} - 2 \cdot b}}\\ \end{array}\]
    3. Simplified12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    4. Using strategy rm
    5. Applied add-exp-log12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\color{blue}{2 \cdot e^{\log \left(\frac{a}{\frac{b}{c}} - b\right)}}}\\ \end{array}\]
    6. Applied add-exp-log12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{\color{blue}{2 \cdot c}}{e^{\log 2} \cdot e^{\log \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    7. Applied prod-exp12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{e^{\log 2 + \log \left(\frac{a}{\frac{b}{c}} - b\right)}}}\\ \end{array}\]
    8. Applied add-exp-log12.5

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot e^{\log c}}{e^{\log 2 + \log \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    9. Applied add-exp-log12.5

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{e^{\log 2} \cdot e^{\log c}}{e^{\log 2 + \log \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    10. Applied prod-exp12.5

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{e^{\log 2 + \log c}}{e^{\log 2 + \log \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    11. Applied div-exp12.5

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;e^{\left(\log 2 + \log c\right) - \left(\log 2 + \log \left(\frac{a}{\frac{b}{c}} - b\right)\right)}\\ \end{array}\]
    12. Simplified12.4

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;e^{\log \left(\frac{c}{\frac{a}{b} \cdot c - b}\right)}\\ \end{array}\]

    if 3.340270116328134e+83 < b

    1. Initial program 42.6

      \[\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{\left(-b\right) + \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}\\ \end{array}\]
    2. Taylor expanded around -inf 42.6

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \frac{a \cdot c}{b} - 2 \cdot b}}\\ \end{array}\]
    3. Simplified42.6

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - \left(4 \cdot a\right) \cdot c}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\color{blue}{\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}}\\ \end{array}\]
    4. Taylor expanded around inf 10.5

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\color{blue}{2 \cdot \frac{a \cdot c}{b} - 2 \cdot b}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]
    5. Simplified3.9

      \[\leadsto \begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\color{blue}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{2 \cdot c}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]
  3. Recombined 4 regimes into one program.
  4. Final simplification7.3

    \[\leadsto \begin{array}{l} \mathbf{if}\;b \le -1.4755018087753095 \cdot 10^{+152}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt[3]{\sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)} \cdot \left(b \cdot b - c \cdot \left(a \cdot 4\right)\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\\ \mathbf{elif}\;b \le -1.1253904323982412 \cdot 10^{-267}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\frac{c \cdot \left(a \cdot 4\right) + \left(b \cdot b - b \cdot b\right)}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{\left(-b\right) + \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}\\ \end{array}\\ \mathbf{elif}\;b \le 3.340270116328134 \cdot 10^{+83}:\\ \;\;\;\;\begin{array}{l} \mathbf{if}\;b \ge 0:\\ \;\;\;\;\frac{\left(-b\right) - \sqrt{b \cdot b - c \cdot \left(a \cdot 4\right)}}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;e^{\log \left(\frac{c}{\frac{a}{b} \cdot c - b}\right)}\\ \end{array}\\ \mathbf{elif}\;b \ge 0:\\ \;\;\;\;\frac{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}{2 \cdot a}\\ \mathbf{else}:\\ \;\;\;\;\frac{c \cdot 2}{2 \cdot \left(\frac{a}{\frac{b}{c}} - b\right)}\\ \end{array}\]

Reproduce

herbie shell --seed 2019156 
(FPCore (a b c)
  :name "jeff quadratic root 1"
  (if (>= b 0) (/ (- (- b) (sqrt (- (* b b) (* (* 4 a) c)))) (* 2 a)) (/ (* 2 c) (+ (- b) (sqrt (- (* b b) (* (* 4 a) c)))))))