\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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))
\Im(\left(\left(-5 + -24 i\right) + \left(\left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right) + \left(\left(40 + 40 i\right) + \left(-60 + 0 i\right)\right)\right)\right))
double f() {
double r1340487 = -1.0;
double r1340488 = 1.0;
double r1340489 = /* ERROR: no complex support in C */;
double r1340490 = r1340489 * r1340489;
double r1340491 = r1340490 * r1340489;
double r1340492 = r1340491 * r1340489;
double r1340493 = r1340492 * r1340489;
double r1340494 = r1340493 * r1340489;
double r1340495 = 6.0;
double r1340496 = 0.0;
double r1340497 = /* ERROR: no complex support in C */;
double r1340498 = r1340497 * r1340489;
double r1340499 = r1340498 * r1340489;
double r1340500 = r1340499 * r1340489;
double r1340501 = r1340500 * r1340489;
double r1340502 = r1340501 * r1340489;
double r1340503 = r1340494 + r1340502;
double r1340504 = 15.0;
double r1340505 = /* ERROR: no complex support in C */;
double r1340506 = r1340505 * r1340489;
double r1340507 = r1340506 * r1340489;
double r1340508 = r1340507 * r1340489;
double r1340509 = r1340508 * r1340489;
double r1340510 = r1340503 + r1340509;
double r1340511 = 20.0;
double r1340512 = /* ERROR: no complex support in C */;
double r1340513 = r1340512 * r1340489;
double r1340514 = r1340513 * r1340489;
double r1340515 = r1340514 * r1340489;
double r1340516 = r1340510 + r1340515;
double r1340517 = r1340516 + r1340507;
double r1340518 = r1340517 + r1340498;
double r1340519 = /* ERROR: no complex support in C */;
double r1340520 = r1340518 + r1340519;
double r1340521 = /* ERROR: no complex support in C */;
return r1340521;
}
double f() {
double r1340522 = -5.0;
double r1340523 = -24.0;
double r1340524 = /* ERROR: no complex support in C */;
double r1340525 = 24.0;
double r1340526 = /* ERROR: no complex support in C */;
double r1340527 = 0.0;
double r1340528 = 8.0;
double r1340529 = /* ERROR: no complex support in C */;
double r1340530 = r1340526 + r1340529;
double r1340531 = 40.0;
double r1340532 = /* ERROR: no complex support in C */;
double r1340533 = -60.0;
double r1340534 = /* ERROR: no complex support in C */;
double r1340535 = r1340532 + r1340534;
double r1340536 = r1340530 + r1340535;
double r1340537 = r1340524 + r1340536;
double r1340538 = /* ERROR: no complex support in C */;
return r1340538;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019119
(FPCore ()
:name "3.9.1 imaginary part (p56)"
(im (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0))))