\left(k0 \cdot u + \left(k1 \cdot u\right) \cdot u\right) + \left(\left(k2 \cdot u\right) \cdot u\right) \cdot u
\left(k0 \cdot u + \left(k1 \cdot u\right) \cdot u\right) + \left(\left(k2 \cdot u\right) \cdot u\right) \cdot u
double code(double k0, double u, double k1, double k2) {
return ((double) (((double) (((double) (k0 * u)) + ((double) (((double) (k1 * u)) * u)))) + ((double) (((double) (((double) (k2 * u)) * u)) * u))));
}
double code(double k0, double u, double k1, double k2) {
return ((double) (((double) (((double) (k0 * u)) + ((double) (((double) (k1 * u)) * u)))) + ((double) (((double) (((double) (k2 * u)) * u)) * u))));
}



Bits error versus k0



Bits error versus u



Bits error versus k1



Bits error versus k2
Results
Initial program 0.1
Final simplification0.1
herbie shell --seed 2020153
(FPCore (k0 u k1 k2)
:name "(+ (+ (* k0 u) (* (* k1 u) u)) (* (* (* k2 u) u) u))"
:precision binary64
(+ (+ (* k0 u) (* (* k1 u) u)) (* (* (* k2 u) u) u)))