Average Error: 2.8 → 2.8
Time: 1.8s
Precision: binary64
\[x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}\]
\[x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}\]
x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}
x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}
double code(double x, double y, double z) {
	return ((double) (x + ((double) (((double) (((double) (1.0 - x)) * ((double) pow(((double) (1.0 - y)), 5.0)))) / ((double) (4.0 - ((double) (3.0 * z))))))));
}
double code(double x, double y, double z) {
	return ((double) (x + ((double) (((double) (((double) (1.0 - x)) * ((double) pow(((double) (1.0 - y)), 5.0)))) / ((double) (4.0 - ((double) (3.0 * z))))))));
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 2.8

    \[x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}\]
  2. Final simplification2.8

    \[\leadsto x + \frac{\left(1 - x\right) \cdot {\left(1 - y\right)}^{5}}{4 - 3 \cdot z}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (x y z)
  :name "(+ x (/ (* (- 1 x) (pow (- 1 y) 5)) (- 4 (* 3 z))))"
  :precision binary64
  (+ x (/ (* (- 1.0 x) (pow (- 1.0 y) 5.0)) (- 4.0 (* 3.0 z)))))