Average Error: 24.0 → 24.0
Time: 1.4s
Precision: binary64
\[a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}\]
\[a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}\]
a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}
a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}
double code(double a, double b, double x, double c, double d) {
	return ((double) (a + ((double) (((double) (((double) (b - a)) * ((double) (x - c)))) / ((double) (d - c))))));
}
double code(double a, double b, double x, double c, double d) {
	return ((double) (a + ((double) (((double) (((double) (b - a)) * ((double) (x - c)))) / ((double) (d - c))))));
}

Error

Bits error versus a

Bits error versus b

Bits error versus x

Bits error versus c

Bits error versus d

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 24.0

    \[a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}\]
  2. Final simplification24.0

    \[\leadsto a + \frac{\left(b - a\right) \cdot \left(x - c\right)}{d - c}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a b x c d)
  :name "(+ a (/ (* (- b a) (- x c)) (- d c)))"
  :precision binary64
  (+ a (/ (* (- b a) (- x c)) (- d c))))