Average Error: 0 → 0
Time: 996.0ms
Precision: 64
\[\left(x \cdot 16.0\right) \cdot x\]
\[x \cdot \left(x \cdot 16.0\right)\]
\left(x \cdot 16.0\right) \cdot x
x \cdot \left(x \cdot 16.0\right)
double f(double x) {
        double r5828587 = x;
        double r5828588 = 16.0;
        double r5828589 = r5828587 * r5828588;
        double r5828590 = r5828589 * r5828587;
        return r5828590;
}

double f(double x) {
        double r5828591 = x;
        double r5828592 = 16.0;
        double r5828593 = r5828591 * r5828592;
        double r5828594 = r5828591 * r5828593;
        return r5828594;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0

    \[\left(x \cdot 16.0\right) \cdot x\]
  2. Final simplification0

    \[\leadsto x \cdot \left(x \cdot 16.0\right)\]

Reproduce

herbie shell --seed 2019158 +o rules:numerics
(FPCore (x)
  :name "Graphics.Rasterific.CubicBezier:isSufficientlyFlat from Rasterific-0.6.1"
  (* (* x 16.0) x))