Average Error: 61.9 → 0
Time: 25.7s
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{-9}{2} + \left(6 \cdot \frac{\sqrt{3}}{-2} + \frac{\sqrt{3}}{2}\right) i\right) + \left(\frac{9}{2} + \left(\left(-\frac{\sqrt{3}}{-2}\right) + \sqrt{3} \cdot 2\right) 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{-9}{2} + \left(6 \cdot \frac{\sqrt{3}}{-2} + \frac{\sqrt{3}}{2}\right) i\right) + \left(\frac{9}{2} + \left(\left(-\frac{\sqrt{3}}{-2}\right) + \sqrt{3} \cdot 2\right) i\right)\right))
double f() {
        double r734448 = 1.0;
        double r734449 = -r734448;
        double r734450 = 2.0;
        double r734451 = r734449 / r734450;
        double r734452 = 3.0;
        double r734453 = sqrt(r734452);
        double r734454 = r734453 / r734450;
        double r734455 = /* ERROR: no complex support in C */;
        double r734456 = r734455 * r734455;
        double r734457 = r734456 * r734455;
        double r734458 = r734457 * r734455;
        double r734459 = -r734450;
        double r734460 = 0.0;
        double r734461 = /* ERROR: no complex support in C */;
        double r734462 = r734461 * r734455;
        double r734463 = r734462 * r734455;
        double r734464 = r734463 * r734455;
        double r734465 = r734458 + r734464;
        double r734466 = 5.0;
        double r734467 = /* ERROR: no complex support in C */;
        double r734468 = r734467 * r734455;
        double r734469 = r734468 * r734455;
        double r734470 = r734465 + r734469;
        double r734471 = 4.0;
        double r734472 = /* ERROR: no complex support in C */;
        double r734473 = r734472 * r734455;
        double r734474 = r734470 + r734473;
        double r734475 = 7.0;
        double r734476 = /* ERROR: no complex support in C */;
        double r734477 = r734474 + r734476;
        double r734478 = /* ERROR: no complex support in C */;
        return r734478;
}

double f() {
        double r734479 = -4.5;
        double r734480 = 6.0;
        double r734481 = 3.0;
        double r734482 = sqrt(r734481);
        double r734483 = -2.0;
        double r734484 = r734482 / r734483;
        double r734485 = r734480 * r734484;
        double r734486 = 2.0;
        double r734487 = r734482 / r734486;
        double r734488 = r734485 + r734487;
        double r734489 = /* ERROR: no complex support in C */;
        double r734490 = 4.5;
        double r734491 = -r734484;
        double r734492 = r734482 * r734486;
        double r734493 = r734491 + r734492;
        double r734494 = /* ERROR: no complex support in C */;
        double r734495 = r734489 + r734494;
        double r734496 = /* ERROR: no complex support in C */;
        return r734496;
}

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

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

Reproduce

herbie shell --seed 2019139 
(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))))