Average Error: 0.0 → 0.0
Time: 2.2s
Precision: 64
\[x \cdot x + y \cdot y\]
\[x \cdot x + y \cdot y\]
x \cdot x + y \cdot y
x \cdot x + y \cdot y
double f(double x, double y) {
        double r11385702 = x;
        double r11385703 = r11385702 * r11385702;
        double r11385704 = y;
        double r11385705 = r11385704 * r11385704;
        double r11385706 = r11385703 + r11385705;
        return r11385706;
}

double f(double x, double y) {
        double r11385707 = x;
        double r11385708 = r11385707 * r11385707;
        double r11385709 = y;
        double r11385710 = r11385709 * r11385709;
        double r11385711 = r11385708 + r11385710;
        return r11385711;
}

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

    \[x \cdot x + y \cdot y\]
  2. Final simplification0.0

    \[\leadsto x \cdot x + y \cdot y\]

Reproduce

herbie shell --seed 2019163 
(FPCore (x y)
  :name "Graphics.Rasterific.Linear:$cquadrance from Rasterific-0.6.1"
  (+ (* x x) (* y y)))