\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 r481490 = -1.0;
double r481491 = 1.0;
double r481492 = /* ERROR: no complex support in C */;
double r481493 = r481492 * r481492;
double r481494 = r481493 * r481492;
double r481495 = r481494 * r481492;
double r481496 = r481495 * r481492;
double r481497 = r481496 * r481492;
double r481498 = 6.0;
double r481499 = 0.0;
double r481500 = /* ERROR: no complex support in C */;
double r481501 = r481500 * r481492;
double r481502 = r481501 * r481492;
double r481503 = r481502 * r481492;
double r481504 = r481503 * r481492;
double r481505 = r481504 * r481492;
double r481506 = r481497 + r481505;
double r481507 = 15.0;
double r481508 = /* ERROR: no complex support in C */;
double r481509 = r481508 * r481492;
double r481510 = r481509 * r481492;
double r481511 = r481510 * r481492;
double r481512 = r481511 * r481492;
double r481513 = r481506 + r481512;
double r481514 = 20.0;
double r481515 = /* ERROR: no complex support in C */;
double r481516 = r481515 * r481492;
double r481517 = r481516 * r481492;
double r481518 = r481517 * r481492;
double r481519 = r481513 + r481518;
double r481520 = r481519 + r481510;
double r481521 = r481520 + r481501;
double r481522 = /* ERROR: no complex support in C */;
double r481523 = r481521 + r481522;
double r481524 = /* ERROR: no complex support in C */;
return r481524;
}
double f() {
double r481525 = -5.0;
double r481526 = -24.0;
double r481527 = /* ERROR: no complex support in C */;
double r481528 = 24.0;
double r481529 = /* ERROR: no complex support in C */;
double r481530 = 0.0;
double r481531 = 8.0;
double r481532 = /* ERROR: no complex support in C */;
double r481533 = r481529 + r481532;
double r481534 = 40.0;
double r481535 = /* ERROR: no complex support in C */;
double r481536 = -60.0;
double r481537 = /* ERROR: no complex support in C */;
double r481538 = r481535 + r481537;
double r481539 = r481533 + r481538;
double r481540 = r481527 + r481539;
double r481541 = /* ERROR: no complex support in C */;
return r481541;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019119 +o rules:numerics
(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))))