Average Error: 58.1 → 58.1
Time: 2.5s
Precision: 64
\[\left(\left(333.75 \cdot {33096}^{6} + \left(77617 \cdot 77617\right) \cdot \left(\left(\left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) + \left(-{33096}^{6}\right)\right) + -121 \cdot {33096}^{4}\right) + -2\right)\right) + 5.5 \cdot {33096}^{8}\right) + \frac{77617}{2 \cdot 33096}\]
\[\mathsf{fma}\left(77617, 77617 \cdot \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right)\right), \mathsf{fma}\left(333.75, {33096}^{6}, \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)\right)\]
\left(\left(333.75 \cdot {33096}^{6} + \left(77617 \cdot 77617\right) \cdot \left(\left(\left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) + \left(-{33096}^{6}\right)\right) + -121 \cdot {33096}^{4}\right) + -2\right)\right) + 5.5 \cdot {33096}^{8}\right) + \frac{77617}{2 \cdot 33096}
\mathsf{fma}\left(77617, 77617 \cdot \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right)\right), \mathsf{fma}\left(333.75, {33096}^{6}, \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)\right)
double f() {
        double r61531 = 333.75;
        double r61532 = 33096.0;
        double r61533 = 6.0;
        double r61534 = pow(r61532, r61533);
        double r61535 = r61531 * r61534;
        double r61536 = 77617.0;
        double r61537 = r61536 * r61536;
        double r61538 = 11.0;
        double r61539 = r61538 * r61537;
        double r61540 = r61532 * r61532;
        double r61541 = r61539 * r61540;
        double r61542 = -r61534;
        double r61543 = r61541 + r61542;
        double r61544 = -121.0;
        double r61545 = 4.0;
        double r61546 = pow(r61532, r61545);
        double r61547 = r61544 * r61546;
        double r61548 = r61543 + r61547;
        double r61549 = -2.0;
        double r61550 = r61548 + r61549;
        double r61551 = r61537 * r61550;
        double r61552 = r61535 + r61551;
        double r61553 = 5.5;
        double r61554 = 8.0;
        double r61555 = pow(r61532, r61554);
        double r61556 = r61553 * r61555;
        double r61557 = r61552 + r61556;
        double r61558 = 2.0;
        double r61559 = r61558 * r61532;
        double r61560 = r61536 / r61559;
        double r61561 = r61557 + r61560;
        return r61561;
}

double f() {
        double r61562 = 77617.0;
        double r61563 = 11.0;
        double r61564 = r61562 * r61562;
        double r61565 = r61563 * r61564;
        double r61566 = 33096.0;
        double r61567 = r61566 * r61566;
        double r61568 = r61565 * r61567;
        double r61569 = 6.0;
        double r61570 = pow(r61566, r61569);
        double r61571 = 4.0;
        double r61572 = pow(r61566, r61571);
        double r61573 = -121.0;
        double r61574 = -2.0;
        double r61575 = fma(r61572, r61573, r61574);
        double r61576 = r61570 - r61575;
        double r61577 = r61568 - r61576;
        double r61578 = r61562 * r61577;
        double r61579 = 333.75;
        double r61580 = 8.0;
        double r61581 = pow(r61566, r61580);
        double r61582 = 5.5;
        double r61583 = 2.0;
        double r61584 = r61583 * r61566;
        double r61585 = r61562 / r61584;
        double r61586 = fma(r61581, r61582, r61585);
        double r61587 = fma(r61579, r61570, r61586);
        double r61588 = fma(r61562, r61578, r61587);
        return r61588;
}

Error

Derivation

  1. Initial program 58.1

    \[\left(\left(333.75 \cdot {33096}^{6} + \left(77617 \cdot 77617\right) \cdot \left(\left(\left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) + \left(-{33096}^{6}\right)\right) + -121 \cdot {33096}^{4}\right) + -2\right)\right) + 5.5 \cdot {33096}^{8}\right) + \frac{77617}{2 \cdot 33096}\]
  2. Simplified58.1

    \[\leadsto \color{blue}{\mathsf{fma}\left(77617 \cdot 77617, \left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right), 333.75 \cdot {33096}^{6} + \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)}\]
  3. Simplified58.1

    \[\leadsto \color{blue}{\mathsf{fma}\left(77617, 77617 \cdot \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right)\right), \mathsf{fma}\left(333.75, {33096}^{6}, \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)\right)}\]
  4. Final simplification58.1

    \[\leadsto \mathsf{fma}\left(77617, 77617 \cdot \left(\left(11 \cdot \left(77617 \cdot 77617\right)\right) \cdot \left(33096 \cdot 33096\right) - \left({33096}^{6} - \mathsf{fma}\left({33096}^{4}, -121, -2\right)\right)\right), \mathsf{fma}\left(333.75, {33096}^{6}, \mathsf{fma}\left({33096}^{8}, 5.5, \frac{77617}{2 \cdot 33096}\right)\right)\right)\]

Reproduce

herbie shell --seed 2020049 +o rules:numerics
(FPCore ()
  :name "From Warwick Tucker's Validated Numerics"
  :precision binary64
  (+ (+ (+ (* 333.75 (pow 33096 6)) (* (* 77617 77617) (+ (+ (+ (* (* 11 (* 77617 77617)) (* 33096 33096)) (- (pow 33096 6))) (* -121 (pow 33096 4))) -2))) (* 5.5 (pow 33096 8))) (/ 77617 (* 2 33096))))