Average Error: 17.9 → 17.9
Time: 1.3s
Precision: binary64
\[a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}\]
\[a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}\]
a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}
a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}
double code(double a1, double a0, double a4, double a2, double a3) {
	return ((double) (a1 + ((double) (a0 * ((double) (((double) (((double) (a1 * a4)) - ((double) (a2 * a3)))) / ((double) (((double) (a2 * a2)) - ((double) (a1 * a3))))))))));
}
double code(double a1, double a0, double a4, double a2, double a3) {
	return ((double) (a1 + ((double) (a0 * ((double) (((double) (((double) (a1 * a4)) - ((double) (a2 * a3)))) / ((double) (((double) (a2 * a2)) - ((double) (a1 * a3))))))))));
}

Error

Bits error versus a1

Bits error versus a0

Bits error versus a4

Bits error versus a2

Bits error versus a3

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 17.9

    \[a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}\]
  2. Final simplification17.9

    \[\leadsto a1 + a0 \cdot \frac{a1 \cdot a4 - a2 \cdot a3}{a2 \cdot a2 - a1 \cdot a3}\]

Reproduce

herbie shell --seed 2020153 
(FPCore (a1 a0 a4 a2 a3)
  :name "(+ a1 (* a0 (/ (- (* a1 a4) (* a2 a3)) (- (* a2 a2) (* a1 a3)))))"
  :precision binary64
  (+ a1 (* a0 (/ (- (* a1 a4) (* a2 a3)) (- (* a2 a2) (* a1 a3))))))