\frac{\left(\left(9 \cdot {a}^{2}\right) \cdot d - \left(\left(4 \cdot a\right) \cdot b\right) \cdot c\right) + {b}^{3}}{a \cdot disc}\frac{\left(\left(9 \cdot {a}^{2}\right) \cdot d - \left(\left(4 \cdot a\right) \cdot b\right) \cdot c\right) + {b}^{3}}{a \cdot disc}double code(double a, double d, double b, double c, double disc) {
return ((double) (((double) (((double) (((double) (((double) (9.0 * ((double) pow(a, 2.0)))) * d)) - ((double) (((double) (((double) (4.0 * a)) * b)) * c)))) + ((double) pow(b, 3.0)))) / ((double) (a * disc))));
}
double code(double a, double d, double b, double c, double disc) {
return ((double) (((double) (((double) (((double) (((double) (9.0 * ((double) pow(a, 2.0)))) * d)) - ((double) (((double) (((double) (4.0 * a)) * b)) * c)))) + ((double) pow(b, 3.0)))) / ((double) (a * disc))));
}



Bits error versus a



Bits error versus d



Bits error versus b



Bits error versus c



Bits error versus disc
Results
Initial program 32.4
Final simplification32.4
herbie shell --seed 2020153
(FPCore (a d b c disc)
:name "(/ (+ (- (* (* 9 (pow a 2)) d) (* (* (* 4 a) b) c)) (pow b 3)) (* a disc))"
:precision binary64
(/ (+ (- (* (* 9.0 (pow a 2.0)) d) (* (* (* 4.0 a) b) c)) (pow b 3.0)) (* a disc)))