Average Error: 0 → 0
Time: 25.1s
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 r1050429 = -1.0;
        double r1050430 = 1.0;
        double r1050431 = /* ERROR: no complex support in C */;
        double r1050432 = r1050431 * r1050431;
        double r1050433 = r1050432 * r1050431;
        double r1050434 = r1050433 * r1050431;
        double r1050435 = r1050434 * r1050431;
        double r1050436 = r1050435 * r1050431;
        double r1050437 = 6.0;
        double r1050438 = 0.0;
        double r1050439 = /* ERROR: no complex support in C */;
        double r1050440 = r1050439 * r1050431;
        double r1050441 = r1050440 * r1050431;
        double r1050442 = r1050441 * r1050431;
        double r1050443 = r1050442 * r1050431;
        double r1050444 = r1050443 * r1050431;
        double r1050445 = r1050436 + r1050444;
        double r1050446 = 15.0;
        double r1050447 = /* ERROR: no complex support in C */;
        double r1050448 = r1050447 * r1050431;
        double r1050449 = r1050448 * r1050431;
        double r1050450 = r1050449 * r1050431;
        double r1050451 = r1050450 * r1050431;
        double r1050452 = r1050445 + r1050451;
        double r1050453 = 20.0;
        double r1050454 = /* ERROR: no complex support in C */;
        double r1050455 = r1050454 * r1050431;
        double r1050456 = r1050455 * r1050431;
        double r1050457 = r1050456 * r1050431;
        double r1050458 = r1050452 + r1050457;
        double r1050459 = r1050458 + r1050449;
        double r1050460 = r1050459 + r1050440;
        double r1050461 = /* ERROR: no complex support in C */;
        double r1050462 = r1050460 + r1050461;
        double r1050463 = /* ERROR: no complex support in C */;
        return r1050463;
}

double f() {
        double r1050464 = 1.0;
        double r1050465 = 0.0;
        double r1050466 = /* ERROR: no complex support in C */;
        double r1050467 = -1.0;
        double r1050468 = 6.0;
        double r1050469 = r1050467 * r1050468;
        double r1050470 = r1050464 * r1050465;
        double r1050471 = r1050469 - r1050470;
        double r1050472 = r1050464 * r1050468;
        double r1050473 = r1050465 * r1050467;
        double r1050474 = r1050472 + r1050473;
        double r1050475 = /* ERROR: no complex support in C */;
        double r1050476 = r1050466 + r1050475;
        double r1050477 = r1050464 + r1050467;
        double r1050478 = r1050467 - r1050464;
        double r1050479 = r1050477 * r1050478;
        double r1050480 = r1050464 * r1050467;
        double r1050481 = r1050480 + r1050480;
        double r1050482 = /* ERROR: no complex support in C */;
        double r1050483 = 20.0;
        double r1050484 = r1050467 * r1050483;
        double r1050485 = r1050484 - r1050470;
        double r1050486 = 15.0;
        double r1050487 = r1050485 + r1050486;
        double r1050488 = r1050483 * r1050464;
        double r1050489 = r1050473 + r1050488;
        double r1050490 = r1050465 + r1050489;
        double r1050491 = /* ERROR: no complex support in C */;
        double r1050492 = r1050482 * r1050491;
        double r1050493 = r1050476 + r1050492;
        double r1050494 = /* ERROR: no complex support in C */;
        double r1050495 = r1050494 + r1050475;
        double r1050496 = r1050481 + r1050479;
        double r1050497 = r1050479 - r1050481;
        double r1050498 = r1050496 * r1050497;
        double r1050499 = r1050479 * r1050481;
        double r1050500 = r1050499 + r1050499;
        double r1050501 = /* ERROR: no complex support in C */;
        double r1050502 = r1050495 * r1050501;
        double r1050503 = r1050479 * r1050498;
        double r1050504 = r1050481 * r1050500;
        double r1050505 = r1050503 - r1050504;
        double r1050506 = r1050498 * r1050481;
        double r1050507 = r1050500 * r1050479;
        double r1050508 = r1050506 + r1050507;
        double r1050509 = /* ERROR: no complex support in C */;
        double r1050510 = r1050502 + r1050509;
        double r1050511 = r1050493 + r1050510;
        double r1050512 = /* ERROR: no complex support in C */;
        return r1050512;
}

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 2019172 
(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))))