Average Error: 0 → 0
Time: 25.0s
Precision: 64
\[\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))\]
\[\Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))\]
\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
\Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))
double f() {
        double r1050483 = -1.0;
        double r1050484 = 1.0;
        double r1050485 = /* ERROR: no complex support in C */;
        double r1050486 = r1050485 * r1050485;
        double r1050487 = r1050486 * r1050485;
        double r1050488 = r1050487 * r1050485;
        double r1050489 = r1050488 * r1050485;
        double r1050490 = r1050489 * r1050485;
        double r1050491 = 6.0;
        double r1050492 = 0.0;
        double r1050493 = /* ERROR: no complex support in C */;
        double r1050494 = r1050493 * r1050485;
        double r1050495 = r1050494 * r1050485;
        double r1050496 = r1050495 * r1050485;
        double r1050497 = r1050496 * r1050485;
        double r1050498 = r1050497 * r1050485;
        double r1050499 = r1050490 + r1050498;
        double r1050500 = 15.0;
        double r1050501 = /* ERROR: no complex support in C */;
        double r1050502 = r1050501 * r1050485;
        double r1050503 = r1050502 * r1050485;
        double r1050504 = r1050503 * r1050485;
        double r1050505 = r1050504 * r1050485;
        double r1050506 = r1050499 + r1050505;
        double r1050507 = 20.0;
        double r1050508 = /* ERROR: no complex support in C */;
        double r1050509 = r1050508 * r1050485;
        double r1050510 = r1050509 * r1050485;
        double r1050511 = r1050510 * r1050485;
        double r1050512 = r1050506 + r1050511;
        double r1050513 = r1050512 + r1050503;
        double r1050514 = r1050513 + r1050494;
        double r1050515 = /* ERROR: no complex support in C */;
        double r1050516 = r1050514 + r1050515;
        double r1050517 = /* ERROR: no complex support in C */;
        return r1050517;
}

double f() {
        double r1050518 = 1.0;
        double r1050519 = 0.0;
        double r1050520 = /* ERROR: no complex support in C */;
        double r1050521 = -1.0;
        double r1050522 = 6.0;
        double r1050523 = r1050521 * r1050522;
        double r1050524 = r1050518 * r1050519;
        double r1050525 = r1050523 - r1050524;
        double r1050526 = r1050518 * r1050522;
        double r1050527 = r1050519 * r1050521;
        double r1050528 = r1050526 + r1050527;
        double r1050529 = /* ERROR: no complex support in C */;
        double r1050530 = r1050520 + r1050529;
        double r1050531 = r1050518 + r1050521;
        double r1050532 = r1050521 - r1050518;
        double r1050533 = r1050531 * r1050532;
        double r1050534 = r1050518 * r1050521;
        double r1050535 = r1050534 + r1050534;
        double r1050536 = /* ERROR: no complex support in C */;
        double r1050537 = 20.0;
        double r1050538 = r1050521 * r1050537;
        double r1050539 = r1050538 - r1050524;
        double r1050540 = 15.0;
        double r1050541 = r1050539 + r1050540;
        double r1050542 = r1050537 * r1050518;
        double r1050543 = r1050527 + r1050542;
        double r1050544 = r1050519 + r1050543;
        double r1050545 = /* ERROR: no complex support in C */;
        double r1050546 = r1050536 * r1050545;
        double r1050547 = r1050530 + r1050546;
        double r1050548 = /* ERROR: no complex support in C */;
        double r1050549 = r1050548 + r1050529;
        double r1050550 = r1050535 + r1050533;
        double r1050551 = r1050533 - r1050535;
        double r1050552 = r1050550 * r1050551;
        double r1050553 = r1050533 * r1050535;
        double r1050554 = r1050553 + r1050553;
        double r1050555 = /* ERROR: no complex support in C */;
        double r1050556 = r1050549 * r1050555;
        double r1050557 = r1050533 * r1050552;
        double r1050558 = r1050535 * r1050554;
        double r1050559 = r1050557 - r1050558;
        double r1050560 = r1050552 * r1050535;
        double r1050561 = r1050554 * r1050533;
        double r1050562 = r1050560 + r1050561;
        double r1050563 = /* ERROR: no complex support in C */;
        double r1050564 = r1050556 + r1050563;
        double r1050565 = r1050547 + r1050564;
        double r1050566 = /* ERROR: no complex support in C */;
        return r1050566;
}

Error

Derivation

  1. Initial program 0

    \[\Im(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Im(\left(\left(\left(\left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right) i\right) \cdot \left(\left(15 + \left(-1 \cdot 20 - 1 \cdot 0.0\right)\right) + \left(0.0 + \left(1 \cdot 20 + 0.0 \cdot -1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) + \left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right) - \left(-1 \cdot 1 + -1 \cdot 1\right)\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right) + \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(-1 \cdot 1 + -1 \cdot 1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) i\right)\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Im(\left(\left(\left(\left(1 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 20 - 1 \cdot 0.0\right) + 15\right) + \left(0.0 + \left(0.0 \cdot -1 + 20 \cdot 1\right)\right) i\right)\right)\right) + \left(\left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 6 - 1 \cdot 0.0\right) + \left(1 \cdot 6 + 0.0 \cdot -1\right) i\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) i\right)\right) + \left(\left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) + \left(\left(\left(\left(1 \cdot -1 + 1 \cdot -1\right) + \left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right)\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) \cdot \left(\left(1 + -1\right) \cdot \left(-1 - 1\right)\right)\right) i\right)\right)\right))\]

Reproduce

herbie shell --seed 2019170 
(FPCore ()
  :name "3.9.1 imaginary part (p56)"
  (im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1.0 1.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (* (* (* (* (* (complex 6.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (complex 20.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (complex 6.0 0.0) (complex -1.0 1.0))) (complex 1.0 0.0))))