Average Error: 61.9 → 0
Time: 24.1s
Precision: 64
\[\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))\]
\[\Re(\left(\left(7 + 0.0 i\right) + \left(\left(\left(4 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\frac{1}{2} \cdot \left(\frac{1}{2} + 2\right) - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(\left(\frac{\sqrt{3}}{2} + 0.0\right) \cdot \frac{-1}{2} + \frac{\sqrt{3}}{2} \cdot \left(-\left(\frac{1}{2} + 2\right)\right)\right) i\right) + \left(5 + 0.0 i\right)\right)\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right))\]
\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))
\Re(\left(\left(7 + 0.0 i\right) + \left(\left(\left(4 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\frac{1}{2} \cdot \left(\frac{1}{2} + 2\right) - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(\left(\frac{\sqrt{3}}{2} + 0.0\right) \cdot \frac{-1}{2} + \frac{\sqrt{3}}{2} \cdot \left(-\left(\frac{1}{2} + 2\right)\right)\right) i\right) + \left(5 + 0.0 i\right)\right)\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right))
double f() {
        double r2225522 = 1.0;
        double r2225523 = -r2225522;
        double r2225524 = 2.0;
        double r2225525 = r2225523 / r2225524;
        double r2225526 = 3.0;
        double r2225527 = sqrt(r2225526);
        double r2225528 = r2225527 / r2225524;
        double r2225529 = /* ERROR: no complex support in C */;
        double r2225530 = r2225529 * r2225529;
        double r2225531 = r2225530 * r2225529;
        double r2225532 = r2225531 * r2225529;
        double r2225533 = -r2225524;
        double r2225534 = 0.0;
        double r2225535 = /* ERROR: no complex support in C */;
        double r2225536 = r2225535 * r2225529;
        double r2225537 = r2225536 * r2225529;
        double r2225538 = r2225537 * r2225529;
        double r2225539 = r2225532 + r2225538;
        double r2225540 = 5.0;
        double r2225541 = /* ERROR: no complex support in C */;
        double r2225542 = r2225541 * r2225529;
        double r2225543 = r2225542 * r2225529;
        double r2225544 = r2225539 + r2225543;
        double r2225545 = 4.0;
        double r2225546 = /* ERROR: no complex support in C */;
        double r2225547 = r2225546 * r2225529;
        double r2225548 = r2225544 + r2225547;
        double r2225549 = 7.0;
        double r2225550 = /* ERROR: no complex support in C */;
        double r2225551 = r2225548 + r2225550;
        double r2225552 = /* ERROR: no complex support in C */;
        return r2225552;
}

double f() {
        double r2225553 = 7.0;
        double r2225554 = 0.0;
        double r2225555 = /* ERROR: no complex support in C */;
        double r2225556 = 4.0;
        double r2225557 = /* ERROR: no complex support in C */;
        double r2225558 = 1.0;
        double r2225559 = -r2225558;
        double r2225560 = 2.0;
        double r2225561 = r2225559 / r2225560;
        double r2225562 = 3.0;
        double r2225563 = sqrt(r2225562);
        double r2225564 = r2225563 / r2225560;
        double r2225565 = /* ERROR: no complex support in C */;
        double r2225566 = r2225558 / r2225560;
        double r2225567 = r2225566 + r2225560;
        double r2225568 = r2225566 * r2225567;
        double r2225569 = r2225564 + r2225554;
        double r2225570 = r2225564 * r2225569;
        double r2225571 = r2225568 - r2225570;
        double r2225572 = r2225569 * r2225561;
        double r2225573 = -r2225567;
        double r2225574 = r2225564 * r2225573;
        double r2225575 = r2225572 + r2225574;
        double r2225576 = /* ERROR: no complex support in C */;
        double r2225577 = 5.0;
        double r2225578 = /* ERROR: no complex support in C */;
        double r2225579 = r2225576 + r2225578;
        double r2225580 = r2225565 * r2225579;
        double r2225581 = r2225557 + r2225580;
        double r2225582 = r2225581 * r2225565;
        double r2225583 = r2225555 + r2225582;
        double r2225584 = /* ERROR: no complex support in C */;
        return r2225584;
}

Error

Derivation

  1. Initial program 61.9

    \[\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Re(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(4 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \left(\left(\frac{-1}{2} \cdot \left(-\left(\frac{1}{2} + 2\right)\right) - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(\frac{-1}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right) + \frac{\sqrt{3}}{2} \cdot \left(-\left(\frac{1}{2} + 2\right)\right)\right) i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(7 + 0.0 i\right) + \left(\left(\left(4 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\frac{1}{2} \cdot \left(\frac{1}{2} + 2\right) - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(\left(\frac{\sqrt{3}}{2} + 0.0\right) \cdot \frac{-1}{2} + \frac{\sqrt{3}}{2} \cdot \left(-\left(\frac{1}{2} + 2\right)\right)\right) i\right) + \left(5 + 0.0 i\right)\right)\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right))\]

Reproduce

herbie shell --seed 2019171 +o rules:numerics
(FPCore ()
  :name "3.9.2 real part (p56)"
  (re (+ (+ (+ (+ (* (* (* (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (* (* (* (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (* (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))