Average Error: 0.1 → 0.1
Time: 17.7s
Precision: 64
\[0.954929658551372 \cdot x - 0.12900613773279798 \cdot \left(\left(x \cdot x\right) \cdot x\right)\]
\[0.954929658551372 \cdot x - 0.12900613773279798 \cdot {x}^{3}\]
0.954929658551372 \cdot x - 0.12900613773279798 \cdot \left(\left(x \cdot x\right) \cdot x\right)
0.954929658551372 \cdot x - 0.12900613773279798 \cdot {x}^{3}
double f(double x) {
        double r880132 = 0.954929658551372;
        double r880133 = x;
        double r880134 = r880132 * r880133;
        double r880135 = 0.12900613773279798;
        double r880136 = r880133 * r880133;
        double r880137 = r880136 * r880133;
        double r880138 = r880135 * r880137;
        double r880139 = r880134 - r880138;
        return r880139;
}

double f(double x) {
        double r880140 = 0.954929658551372;
        double r880141 = x;
        double r880142 = r880140 * r880141;
        double r880143 = 0.12900613773279798;
        double r880144 = 3.0;
        double r880145 = pow(r880141, r880144);
        double r880146 = r880143 * r880145;
        double r880147 = r880142 - r880146;
        return r880147;
}

Error

Bits error versus x

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.1

    \[0.954929658551372 \cdot x - 0.12900613773279798 \cdot \left(\left(x \cdot x\right) \cdot x\right)\]
  2. Using strategy rm
  3. Applied pow10.1

    \[\leadsto 0.954929658551372 \cdot x - 0.12900613773279798 \cdot \left(\left(\color{blue}{{x}^{1}} \cdot x\right) \cdot x\right)\]
  4. Applied pow-plus0.1

    \[\leadsto 0.954929658551372 \cdot x - 0.12900613773279798 \cdot \left(\color{blue}{{x}^{\left(1 + 1\right)}} \cdot x\right)\]
  5. Applied pow-plus0.1

    \[\leadsto 0.954929658551372 \cdot x - 0.12900613773279798 \cdot \color{blue}{{x}^{\left(\left(1 + 1\right) + 1\right)}}\]
  6. Simplified0.1

    \[\leadsto 0.954929658551372 \cdot x - 0.12900613773279798 \cdot {x}^{\color{blue}{3}}\]
  7. Final simplification0.1

    \[\leadsto 0.954929658551372 \cdot x - 0.12900613773279798 \cdot {x}^{3}\]

Reproduce

herbie shell --seed 2019141 +o rules:numerics
(FPCore (x)
  :name "Rosa's Benchmark"
  (- (* 0.954929658551372 x) (* 0.12900613773279798 (* (* x x) x))))