Average Error: 43.9 → 0.3
Time: 12.4s
Precision: 64
\[1.1102230246251565404236316680908203125 \cdot 10^{-16} \lt a \lt 9007199254740992 \land 1.1102230246251565404236316680908203125 \cdot 10^{-16} \lt b \lt 9007199254740992 \land 1.1102230246251565404236316680908203125 \cdot 10^{-16} \lt c \lt 9007199254740992\]
\[\frac{\left(-b\right) + \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}{3 \cdot a}\]
\[\frac{\frac{3 \cdot a}{3}}{\frac{a}{\frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}\]
\frac{\left(-b\right) + \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}{3 \cdot a}
\frac{\frac{3 \cdot a}{3}}{\frac{a}{\frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}
double f(double a, double b, double c) {
        double r130054 = b;
        double r130055 = -r130054;
        double r130056 = r130054 * r130054;
        double r130057 = 3.0;
        double r130058 = a;
        double r130059 = r130057 * r130058;
        double r130060 = c;
        double r130061 = r130059 * r130060;
        double r130062 = r130056 - r130061;
        double r130063 = sqrt(r130062);
        double r130064 = r130055 + r130063;
        double r130065 = r130064 / r130059;
        return r130065;
}

double f(double a, double b, double c) {
        double r130066 = 3.0;
        double r130067 = a;
        double r130068 = r130066 * r130067;
        double r130069 = r130068 / r130066;
        double r130070 = c;
        double r130071 = b;
        double r130072 = -r130071;
        double r130073 = r130071 * r130071;
        double r130074 = r130068 * r130070;
        double r130075 = r130073 - r130074;
        double r130076 = sqrt(r130075);
        double r130077 = r130072 - r130076;
        double r130078 = r130070 / r130077;
        double r130079 = r130067 / r130078;
        double r130080 = r130069 / r130079;
        return r130080;
}

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. Initial program 43.9

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

    \[\leadsto \frac{\color{blue}{\frac{\left(-b\right) \cdot \left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c} \cdot \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}{3 \cdot a}\]
  4. Simplified0.5

    \[\leadsto \frac{\frac{\color{blue}{0 + 3 \cdot \left(a \cdot c\right)}}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}{3 \cdot a}\]
  5. Using strategy rm
  6. Applied clear-num0.6

    \[\leadsto \color{blue}{\frac{1}{\frac{3 \cdot a}{\frac{0 + 3 \cdot \left(a \cdot c\right)}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}}\]
  7. Simplified0.5

    \[\leadsto \frac{1}{\color{blue}{\frac{3 \cdot a}{\frac{\left(3 \cdot a\right) \cdot c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}}\]
  8. Using strategy rm
  9. Applied *-un-lft-identity0.5

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

    \[\leadsto \frac{1}{\frac{3 \cdot a}{\color{blue}{\frac{3 \cdot a}{1} \cdot \frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}}\]
  11. Applied times-frac0.5

    \[\leadsto \frac{1}{\color{blue}{\frac{3}{\frac{3 \cdot a}{1}} \cdot \frac{a}{\frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}}\]
  12. Applied associate-/r*0.4

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

    \[\leadsto \frac{\color{blue}{\frac{3 \cdot a}{3}}}{\frac{a}{\frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}\]
  14. Final simplification0.3

    \[\leadsto \frac{\frac{3 \cdot a}{3}}{\frac{a}{\frac{c}{\left(-b\right) - \sqrt{b \cdot b - \left(3 \cdot a\right) \cdot c}}}}\]

Reproduce

herbie shell --seed 2019350 
(FPCore (a b c)
  :name "Cubic critical, medium range"
  :precision binary64
  :pre (and (< 1.11022e-16 a 9.0072e+15) (< 1.11022e-16 b 9.0072e+15) (< 1.11022e-16 c 9.0072e+15))
  (/ (+ (- b) (sqrt (- (* b b) (* (* 3 a) c)))) (* 3 a)))