?

Average Error: 52.0 → 0
Time: 2.7s
Precision: binary64
Cost: 13888

?

\[x = 10864 \land y = 18817\]
\[\left(9 \cdot {x}^{4} - {y}^{4}\right) + 2 \cdot \left(y \cdot y\right) \]
\[\left(\left(9 \cdot {x}^{4} + \left(1 - {y}^{4}\right)\right) + -1\right) + y \cdot \left(y \cdot 2\right) \]
(FPCore (x y)
 :precision binary64
 (+ (- (* 9.0 (pow x 4.0)) (pow y 4.0)) (* 2.0 (* y y))))
(FPCore (x y)
 :precision binary64
 (+ (+ (+ (* 9.0 (pow x 4.0)) (- 1.0 (pow y 4.0))) -1.0) (* y (* y 2.0))))
double code(double x, double y) {
	return ((9.0 * pow(x, 4.0)) - pow(y, 4.0)) + (2.0 * (y * y));
}
double code(double x, double y) {
	return (((9.0 * pow(x, 4.0)) + (1.0 - pow(y, 4.0))) + -1.0) + (y * (y * 2.0));
}
real(8) function code(x, y)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    code = ((9.0d0 * (x ** 4.0d0)) - (y ** 4.0d0)) + (2.0d0 * (y * y))
end function
real(8) function code(x, y)
    real(8), intent (in) :: x
    real(8), intent (in) :: y
    code = (((9.0d0 * (x ** 4.0d0)) + (1.0d0 - (y ** 4.0d0))) + (-1.0d0)) + (y * (y * 2.0d0))
end function
public static double code(double x, double y) {
	return ((9.0 * Math.pow(x, 4.0)) - Math.pow(y, 4.0)) + (2.0 * (y * y));
}
public static double code(double x, double y) {
	return (((9.0 * Math.pow(x, 4.0)) + (1.0 - Math.pow(y, 4.0))) + -1.0) + (y * (y * 2.0));
}
def code(x, y):
	return ((9.0 * math.pow(x, 4.0)) - math.pow(y, 4.0)) + (2.0 * (y * y))
def code(x, y):
	return (((9.0 * math.pow(x, 4.0)) + (1.0 - math.pow(y, 4.0))) + -1.0) + (y * (y * 2.0))
function code(x, y)
	return Float64(Float64(Float64(9.0 * (x ^ 4.0)) - (y ^ 4.0)) + Float64(2.0 * Float64(y * y)))
end
function code(x, y)
	return Float64(Float64(Float64(Float64(9.0 * (x ^ 4.0)) + Float64(1.0 - (y ^ 4.0))) + -1.0) + Float64(y * Float64(y * 2.0)))
end
function tmp = code(x, y)
	tmp = ((9.0 * (x ^ 4.0)) - (y ^ 4.0)) + (2.0 * (y * y));
end
function tmp = code(x, y)
	tmp = (((9.0 * (x ^ 4.0)) + (1.0 - (y ^ 4.0))) + -1.0) + (y * (y * 2.0));
end
code[x_, y_] := N[(N[(N[(9.0 * N[Power[x, 4.0], $MachinePrecision]), $MachinePrecision] - N[Power[y, 4.0], $MachinePrecision]), $MachinePrecision] + N[(2.0 * N[(y * y), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
code[x_, y_] := N[(N[(N[(N[(9.0 * N[Power[x, 4.0], $MachinePrecision]), $MachinePrecision] + N[(1.0 - N[Power[y, 4.0], $MachinePrecision]), $MachinePrecision]), $MachinePrecision] + -1.0), $MachinePrecision] + N[(y * N[(y * 2.0), $MachinePrecision]), $MachinePrecision]), $MachinePrecision]
\left(9 \cdot {x}^{4} - {y}^{4}\right) + 2 \cdot \left(y \cdot y\right)
\left(\left(9 \cdot {x}^{4} + \left(1 - {y}^{4}\right)\right) + -1\right) + y \cdot \left(y \cdot 2\right)

Error?

Try it out?

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation?

  1. Initial program 52.0

    \[\left(9 \cdot {x}^{4} - {y}^{4}\right) + 2 \cdot \left(y \cdot y\right) \]
  2. Simplified52.0

    \[\leadsto \color{blue}{\left(9 \cdot {x}^{4} - {y}^{4}\right) + y \cdot \left(y \cdot 2\right)} \]
    Proof

    [Start]52.0

    \[ \left(9 \cdot {x}^{4} - {y}^{4}\right) + 2 \cdot \left(y \cdot y\right) \]

    rational.json-simplify-43 [=>]52.0

    \[ \left(9 \cdot {x}^{4} - {y}^{4}\right) + \color{blue}{y \cdot \left(y \cdot 2\right)} \]
  3. Applied egg-rr0

    \[\leadsto \color{blue}{\left(\left(9 \cdot {x}^{4} + \left(1 - {y}^{4}\right)\right) + -1\right)} + y \cdot \left(y \cdot 2\right) \]
  4. Final simplification0

    \[\leadsto \left(\left(9 \cdot {x}^{4} + \left(1 - {y}^{4}\right)\right) + -1\right) + y \cdot \left(y \cdot 2\right) \]

Alternatives

Alternative 1
Error52.0
Cost13632
\[\left(9 \cdot {x}^{4} - {y}^{4}\right) + 2 \cdot \left(y \cdot y\right) \]
Alternative 2
Error57.8
Cost7040
\[9 \cdot {x}^{4} + y \cdot \left(y \cdot 2\right) \]
Alternative 3
Error63.0
Cost6976
\[\left(-{y}^{4}\right) + y \cdot \left(y \cdot 2\right) \]

Error

Reproduce?

herbie shell --seed 2023073 
(FPCore (x y)
  :name "From Rump in a 1983 paper"
  :precision binary64
  :pre (and (== x 10864.0) (== y 18817.0))
  (+ (- (* 9.0 (pow x 4.0)) (pow y 4.0)) (* 2.0 (* y y))))