Average Error: 61.9 → 0
Time: 17.6s
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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\]
\[\Re(\left(\left(\frac{-1}{2} + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) \cdot \left(\left(\frac{-1}{2} + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) + \left(6 + \left(-\sqrt{3}\right) i\right)\right) + \left(5 + \sqrt{3} \cdot 2 i\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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))
\Re(\left(\left(\frac{-1}{2} + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) \cdot \left(\left(\frac{-1}{2} + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) + \left(6 + \left(-\sqrt{3}\right) i\right)\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))
double f() {
        double r1137531 = 1.0;
        double r1137532 = -r1137531;
        double r1137533 = 2.0;
        double r1137534 = r1137532 / r1137533;
        double r1137535 = 3.0;
        double r1137536 = sqrt(r1137535);
        double r1137537 = r1137536 / r1137533;
        double r1137538 = /* ERROR: no complex support in C */;
        double r1137539 = r1137538 * r1137538;
        double r1137540 = r1137539 * r1137538;
        double r1137541 = r1137540 * r1137538;
        double r1137542 = -r1137533;
        double r1137543 = 0.0;
        double r1137544 = /* ERROR: no complex support in C */;
        double r1137545 = r1137544 * r1137538;
        double r1137546 = r1137545 * r1137538;
        double r1137547 = r1137546 * r1137538;
        double r1137548 = r1137541 + r1137547;
        double r1137549 = 5.0;
        double r1137550 = /* ERROR: no complex support in C */;
        double r1137551 = r1137550 * r1137538;
        double r1137552 = r1137551 * r1137538;
        double r1137553 = r1137548 + r1137552;
        double r1137554 = 4.0;
        double r1137555 = /* ERROR: no complex support in C */;
        double r1137556 = r1137555 * r1137538;
        double r1137557 = r1137553 + r1137556;
        double r1137558 = 7.0;
        double r1137559 = /* ERROR: no complex support in C */;
        double r1137560 = r1137557 + r1137559;
        double r1137561 = /* ERROR: no complex support in C */;
        return r1137561;
}

double f() {
        double r1137562 = -0.5;
        double r1137563 = 3.0;
        double r1137564 = sqrt(r1137563);
        double r1137565 = -4.0;
        double r1137566 = r1137564 / r1137565;
        double r1137567 = r1137566 + r1137566;
        double r1137568 = /* ERROR: no complex support in C */;
        double r1137569 = 6.0;
        double r1137570 = -r1137564;
        double r1137571 = /* ERROR: no complex support in C */;
        double r1137572 = r1137568 + r1137571;
        double r1137573 = r1137568 * r1137572;
        double r1137574 = 5.0;
        double r1137575 = 2.0;
        double r1137576 = r1137564 * r1137575;
        double r1137577 = /* ERROR: no complex support in C */;
        double r1137578 = r1137573 + r1137577;
        double r1137579 = /* ERROR: no complex support in C */;
        return r1137579;
}

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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\]
  2. Simplified0

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

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

Reproduce

herbie shell --seed 2019129 +o rules:numerics
(FPCore ()
  :name "3.9.2 real part (p56)"
  (re (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))