Average Error: 0 → 0
Time: 21.5s
Precision: 64
\[\Im(\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))\]
\[\Im(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(-2 + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right)\right) + \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(4 + 0 i\right)\right) + \left(7 + 0 i\right)\right))\]
\Im(\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))
\Im(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(-2 + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right)\right) + \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(4 + 0 i\right)\right) + \left(7 + 0 i\right)\right))
double f() {
        double r1014513 = 1.0;
        double r1014514 = -r1014513;
        double r1014515 = 2.0;
        double r1014516 = r1014514 / r1014515;
        double r1014517 = 3.0;
        double r1014518 = sqrt(r1014517);
        double r1014519 = r1014518 / r1014515;
        double r1014520 = /* ERROR: no complex support in C */;
        double r1014521 = r1014520 * r1014520;
        double r1014522 = r1014521 * r1014520;
        double r1014523 = r1014522 * r1014520;
        double r1014524 = -r1014515;
        double r1014525 = 0.0;
        double r1014526 = /* ERROR: no complex support in C */;
        double r1014527 = r1014526 * r1014520;
        double r1014528 = r1014527 * r1014520;
        double r1014529 = r1014528 * r1014520;
        double r1014530 = r1014523 + r1014529;
        double r1014531 = 5.0;
        double r1014532 = /* ERROR: no complex support in C */;
        double r1014533 = r1014532 * r1014520;
        double r1014534 = r1014533 * r1014520;
        double r1014535 = r1014530 + r1014534;
        double r1014536 = 4.0;
        double r1014537 = /* ERROR: no complex support in C */;
        double r1014538 = r1014537 * r1014520;
        double r1014539 = r1014535 + r1014538;
        double r1014540 = 7.0;
        double r1014541 = /* ERROR: no complex support in C */;
        double r1014542 = r1014539 + r1014541;
        double r1014543 = /* ERROR: no complex support in C */;
        return r1014543;
}

double f() {
        double r1014544 = -0.5;
        double r1014545 = 3.0;
        double r1014546 = sqrt(r1014545);
        double r1014547 = 2.0;
        double r1014548 = r1014546 / r1014547;
        double r1014549 = /* ERROR: no complex support in C */;
        double r1014550 = r1014549 * r1014549;
        double r1014551 = r1014550 * r1014549;
        double r1014552 = r1014549 * r1014551;
        double r1014553 = -2.0;
        double r1014554 = 0.0;
        double r1014555 = /* ERROR: no complex support in C */;
        double r1014556 = r1014555 * r1014549;
        double r1014557 = r1014549 * r1014556;
        double r1014558 = r1014549 * r1014557;
        double r1014559 = r1014552 + r1014558;
        double r1014560 = 5.0;
        double r1014561 = /* ERROR: no complex support in C */;
        double r1014562 = r1014561 * r1014549;
        double r1014563 = r1014562 * r1014549;
        double r1014564 = r1014559 + r1014563;
        double r1014565 = 4.0;
        double r1014566 = /* ERROR: no complex support in C */;
        double r1014567 = r1014549 * r1014566;
        double r1014568 = r1014564 + r1014567;
        double r1014569 = 7.0;
        double r1014570 = /* ERROR: no complex support in C */;
        double r1014571 = r1014568 + r1014570;
        double r1014572 = /* ERROR: no complex support in C */;
        return r1014572;
}

Error

Derivation

  1. Initial program 0

    \[\Im(\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. Final simplification0

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

Reproduce

herbie shell --seed 2019130 +o rules:numerics
(FPCore ()
  :name "3.9.2 imaginary part (p56)"
  (im (+.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))))