Average Error: 0.0 → 0.0
Time: 31.3s
Precision: 64
\[\left(\left(\left(\left(\left(\left(-7\right) \cdot {x}^{7} + 28 \cdot {x}^{6}\right) - 56 \cdot {x}^{5}\right) + 70 \cdot {x}^{4}\right) - 56 \cdot {x}^{3}\right) + 28 \cdot {x}^{2}\right) - 8 \cdot x\]
\[\left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + \left(\sqrt[3]{70 \cdot {x}^{4}} \cdot \sqrt[3]{70 \cdot {x}^{4}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}} \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right) \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right)\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8\]
\left(\left(\left(\left(\left(\left(-7\right) \cdot {x}^{7} + 28 \cdot {x}^{6}\right) - 56 \cdot {x}^{5}\right) + 70 \cdot {x}^{4}\right) - 56 \cdot {x}^{3}\right) + 28 \cdot {x}^{2}\right) - 8 \cdot x
\left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + \left(\sqrt[3]{70 \cdot {x}^{4}} \cdot \sqrt[3]{70 \cdot {x}^{4}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}} \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right) \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right)\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8
double f(double x) {
        double r3148391 = 7.0;
        double r3148392 = -r3148391;
        double r3148393 = x;
        double r3148394 = pow(r3148393, r3148391);
        double r3148395 = r3148392 * r3148394;
        double r3148396 = 28.0;
        double r3148397 = 6.0;
        double r3148398 = pow(r3148393, r3148397);
        double r3148399 = r3148396 * r3148398;
        double r3148400 = r3148395 + r3148399;
        double r3148401 = 56.0;
        double r3148402 = 5.0;
        double r3148403 = pow(r3148393, r3148402);
        double r3148404 = r3148401 * r3148403;
        double r3148405 = r3148400 - r3148404;
        double r3148406 = 70.0;
        double r3148407 = 4.0;
        double r3148408 = pow(r3148393, r3148407);
        double r3148409 = r3148406 * r3148408;
        double r3148410 = r3148405 + r3148409;
        double r3148411 = 3.0;
        double r3148412 = pow(r3148393, r3148411);
        double r3148413 = r3148401 * r3148412;
        double r3148414 = r3148410 - r3148413;
        double r3148415 = 2.0;
        double r3148416 = pow(r3148393, r3148415);
        double r3148417 = r3148396 * r3148416;
        double r3148418 = r3148414 + r3148417;
        double r3148419 = 8.0;
        double r3148420 = r3148419 * r3148393;
        double r3148421 = r3148418 - r3148420;
        return r3148421;
}

double f(double x) {
        double r3148422 = 28.0;
        double r3148423 = x;
        double r3148424 = 2.0;
        double r3148425 = pow(r3148423, r3148424);
        double r3148426 = 6.0;
        double r3148427 = pow(r3148423, r3148426);
        double r3148428 = r3148425 + r3148427;
        double r3148429 = r3148422 * r3148428;
        double r3148430 = 7.0;
        double r3148431 = pow(r3148423, r3148430);
        double r3148432 = r3148430 * r3148431;
        double r3148433 = r3148429 - r3148432;
        double r3148434 = 70.0;
        double r3148435 = 4.0;
        double r3148436 = pow(r3148423, r3148435);
        double r3148437 = r3148434 * r3148436;
        double r3148438 = cbrt(r3148437);
        double r3148439 = r3148438 * r3148438;
        double r3148440 = cbrt(r3148438);
        double r3148441 = r3148440 * r3148440;
        double r3148442 = r3148441 * r3148440;
        double r3148443 = r3148439 * r3148442;
        double r3148444 = r3148433 + r3148443;
        double r3148445 = 56.0;
        double r3148446 = 5.0;
        double r3148447 = pow(r3148423, r3148446);
        double r3148448 = 3.0;
        double r3148449 = pow(r3148423, r3148448);
        double r3148450 = r3148447 + r3148449;
        double r3148451 = r3148445 * r3148450;
        double r3148452 = r3148444 - r3148451;
        double r3148453 = 8.0;
        double r3148454 = r3148423 * r3148453;
        double r3148455 = r3148452 - r3148454;
        return r3148455;
}

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

    \[\left(\left(\left(\left(\left(\left(-7\right) \cdot {x}^{7} + 28 \cdot {x}^{6}\right) - 56 \cdot {x}^{5}\right) + 70 \cdot {x}^{4}\right) - 56 \cdot {x}^{3}\right) + 28 \cdot {x}^{2}\right) - 8 \cdot x\]
  2. Simplified0.0

    \[\leadsto \color{blue}{\left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + 70 \cdot {x}^{4}\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8}\]
  3. Using strategy rm
  4. Applied add-cube-cbrt0.1

    \[\leadsto \left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + \color{blue}{\left(\sqrt[3]{70 \cdot {x}^{4}} \cdot \sqrt[3]{70 \cdot {x}^{4}}\right) \cdot \sqrt[3]{70 \cdot {x}^{4}}}\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8\]
  5. Using strategy rm
  6. Applied add-cube-cbrt0.0

    \[\leadsto \left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + \left(\sqrt[3]{70 \cdot {x}^{4}} \cdot \sqrt[3]{70 \cdot {x}^{4}}\right) \cdot \color{blue}{\left(\left(\sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}} \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right) \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right)}\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8\]
  7. Final simplification0.0

    \[\leadsto \left(\left(\left(28 \cdot \left({x}^{2} + {x}^{6}\right) - 7 \cdot {x}^{7}\right) + \left(\sqrt[3]{70 \cdot {x}^{4}} \cdot \sqrt[3]{70 \cdot {x}^{4}}\right) \cdot \left(\left(\sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}} \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right) \cdot \sqrt[3]{\sqrt[3]{70 \cdot {x}^{4}}}\right)\right) - 56 \cdot \left({x}^{5} + {x}^{3}\right)\right) - x \cdot 8\]

Reproduce

herbie shell --seed 1 
(FPCore (x)
  :name "-7*pow(x, 7)+28*pow(x, 6)-56*pow(x, 5)+70*pow(x, 4)-56*pow(x, 3)+28*pow(x, 2)-8*x"
  :precision binary64
  (- (+ (- (+ (- (+ (* (- 7) (pow x 7)) (* 28 (pow x 6))) (* 56 (pow x 5))) (* 70 (pow x 4))) (* 56 (pow x 3))) (* 28 (pow x 2))) (* 8 x)))