Average Error: 17.4 → 17.4
Time: 708.0ms
Precision: binary64
\[\frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}\]
\[\frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}\]
\frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}
\frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}
double code(double x, double y) {
	return ((double) (((double) (((double) (x * y)) - 1.0)) / ((double) (((double) (((double) (x * y)) * ((double) (x * y)))) - 1.0))));
}
double code(double x, double y) {
	return ((double) (((double) (((double) (x * y)) - 1.0)) / ((double) (((double) (((double) (x * y)) * ((double) (x * y)))) - 1.0))));
}

Error

Bits error versus x

Bits error versus y

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 17.4

    \[\frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}\]
  2. Final simplification17.4

    \[\leadsto \frac{x \cdot y - 1}{\left(x \cdot y\right) \cdot \left(x \cdot y\right) - 1}\]

Reproduce

herbie shell --seed 2020152 
(FPCore (x y)
  :name "(/ (- (* x y) 1) (- (* (* x y) (* x y)) 1))"
  :precision binary64
  (/ (- (* x y) 1.0) (- (* (* x y) (* x y)) 1.0)))