Average Error: 0.0 → 0.0
Time: 800.0ms
Precision: 64
\[x \cdot \left(1 - x \cdot 0.5\right)\]
\[x \cdot \left(1 - x \cdot 0.5\right)\]
x \cdot \left(1 - x \cdot 0.5\right)
x \cdot \left(1 - x \cdot 0.5\right)
double f(double x) {
        double r47956 = x;
        double r47957 = 1.0;
        double r47958 = 0.5;
        double r47959 = r47956 * r47958;
        double r47960 = r47957 - r47959;
        double r47961 = r47956 * r47960;
        return r47961;
}

double f(double x) {
        double r47962 = x;
        double r47963 = 1.0;
        double r47964 = 0.5;
        double r47965 = r47962 * r47964;
        double r47966 = r47963 - r47965;
        double r47967 = r47962 * r47966;
        return r47967;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[x \cdot \left(1 - x \cdot 0.5\right)\]
  2. Final simplification0.0

    \[\leadsto x \cdot \left(1 - x \cdot 0.5\right)\]

Reproduce

herbie shell --seed 2020024 
(FPCore (x)
  :name "Numeric.SpecFunctions:log1p from math-functions-0.1.5.2, B"
  :precision binary64
  (* x (- 1 (* x 0.5))))