Average Error: 0.0 → 0.0
Time: 6.4s
Precision: 64
\[x \cdot x - \left(y \cdot 4\right) \cdot z\]
\[x \cdot x - \left(y \cdot 4\right) \cdot z\]
x \cdot x - \left(y \cdot 4\right) \cdot z
x \cdot x - \left(y \cdot 4\right) \cdot z
double f(double x, double y, double z) {
        double r109014 = x;
        double r109015 = r109014 * r109014;
        double r109016 = y;
        double r109017 = 4.0;
        double r109018 = r109016 * r109017;
        double r109019 = z;
        double r109020 = r109018 * r109019;
        double r109021 = r109015 - r109020;
        return r109021;
}

double f(double x, double y, double z) {
        double r109022 = x;
        double r109023 = r109022 * r109022;
        double r109024 = y;
        double r109025 = 4.0;
        double r109026 = r109024 * r109025;
        double r109027 = z;
        double r109028 = r109026 * r109027;
        double r109029 = r109023 - r109028;
        return r109029;
}

Error

Bits error versus x

Bits error versus y

Bits error versus z

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

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

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

Reproduce

herbie shell --seed 2019305 
(FPCore (x y z)
  :name "Graphics.Rasterific.QuadraticFormula:discriminant from Rasterific-0.6.1"
  :precision binary64
  (- (* x x) (* (* y 4) z)))