Average Error: 0.2 → 0.2
Time: 2.5s
Precision: 64
\[0.9549296585513720181381813745247200131416 \cdot x - 0.1290061377327979819096270830414141528308 \cdot \left(\left(x \cdot x\right) \cdot x\right)\]
\[0.9549296585513720181381813745247200131416 \cdot x - \left(\left(x \cdot x\right) \cdot x\right) \cdot 0.1290061377327979819096270830414141528308\]
0.9549296585513720181381813745247200131416 \cdot x - 0.1290061377327979819096270830414141528308 \cdot \left(\left(x \cdot x\right) \cdot x\right)
0.9549296585513720181381813745247200131416 \cdot x - \left(\left(x \cdot x\right) \cdot x\right) \cdot 0.1290061377327979819096270830414141528308
double f(double x) {
        double r21236 = 0.954929658551372;
        double r21237 = x;
        double r21238 = r21236 * r21237;
        double r21239 = 0.12900613773279798;
        double r21240 = r21237 * r21237;
        double r21241 = r21240 * r21237;
        double r21242 = r21239 * r21241;
        double r21243 = r21238 - r21242;
        return r21243;
}

double f(double x) {
        double r21244 = 0.954929658551372;
        double r21245 = x;
        double r21246 = r21244 * r21245;
        double r21247 = r21245 * r21245;
        double r21248 = r21247 * r21245;
        double r21249 = 0.12900613773279798;
        double r21250 = r21248 * r21249;
        double r21251 = r21246 - r21250;
        return r21251;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.2

    \[0.9549296585513720181381813745247200131416 \cdot x - 0.1290061377327979819096270830414141528308 \cdot \left(\left(x \cdot x\right) \cdot x\right)\]
  2. Using strategy rm
  3. Applied *-commutative0.2

    \[\leadsto 0.9549296585513720181381813745247200131416 \cdot x - \color{blue}{\left(\left(x \cdot x\right) \cdot x\right) \cdot 0.1290061377327979819096270830414141528308}\]
  4. Final simplification0.2

    \[\leadsto 0.9549296585513720181381813745247200131416 \cdot x - \left(\left(x \cdot x\right) \cdot x\right) \cdot 0.1290061377327979819096270830414141528308\]

Reproduce

herbie shell --seed 2019354 
(FPCore (x)
  :name "Rosa's Benchmark"
  :precision binary64
  (- (* 0.954929658551372 x) (* 0.12900613773279798 (* (* x x) x))))