Average Error: 0.5 → 0.5
Time: 1.4s
Precision: binary64
\[\frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}\]
\[\frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}\]
\frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}
\frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}
double code(double a, double b, double c) {
	return ((double) (((double) (((double) (((double) (((double) (((double) (2.0 * a)) * a)) * a)) - ((double) (((double) (9.0 * a)) * b)))) + ((double) (27.0 * c)))) / 54.0));
}
double code(double a, double b, double c) {
	return ((double) (((double) (((double) (((double) (((double) (((double) (2.0 * a)) * a)) * a)) - ((double) (((double) (9.0 * a)) * b)))) + ((double) (27.0 * c)))) / 54.0));
}

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 0.5

    \[\frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}\]
  2. Final simplification0.5

    \[\leadsto \frac{\left(\left(\left(2 \cdot a\right) \cdot a\right) \cdot a - \left(9 \cdot a\right) \cdot b\right) + 27 \cdot c}{54}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a b c)
  :name "(/ (+ (- (* (* (* 2 a) a) a) (* (* 9 a) b)) (* 27 c)) 54)"
  :precision binary64
  (/ (+ (- (* (* (* 2.0 a) a) a) (* (* 9.0 a) b)) (* 27.0 c)) 54.0))