Average Error: 0.0 → 0.0
Time: 764.0ms
Precision: 64
\[\left(x + y\right) - x \cdot y\]
\[\left(x + y\right) - x \cdot y\]
\left(x + y\right) - x \cdot y
\left(x + y\right) - x \cdot y
double f(double x, double y) {
        double r334919 = x;
        double r334920 = y;
        double r334921 = r334919 + r334920;
        double r334922 = r334919 * r334920;
        double r334923 = r334921 - r334922;
        return r334923;
}

double f(double x, double y) {
        double r334924 = x;
        double r334925 = y;
        double r334926 = r334924 + r334925;
        double r334927 = r334924 * r334925;
        double r334928 = r334926 - r334927;
        return r334928;
}

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 0.0

    \[\left(x + y\right) - x \cdot y\]
  2. Final simplification0.0

    \[\leadsto \left(x + y\right) - x \cdot y\]

Reproduce

herbie shell --seed 2020024 +o rules:numerics
(FPCore (x y)
  :name "Data.Colour.RGBSpace.HSL:hsl from colour-2.3.3, A"
  :precision binary64
  (- (+ x y) (* x y)))