\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 r2084572 = -1.0;
double r2084573 = 1.0;
double r2084574 = /* ERROR: no complex support in C */;
double r2084575 = r2084574 * r2084574;
double r2084576 = r2084575 * r2084574;
double r2084577 = r2084576 * r2084574;
double r2084578 = r2084577 * r2084574;
double r2084579 = r2084578 * r2084574;
double r2084580 = 6.0;
double r2084581 = 0.0;
double r2084582 = /* ERROR: no complex support in C */;
double r2084583 = r2084582 * r2084574;
double r2084584 = r2084583 * r2084574;
double r2084585 = r2084584 * r2084574;
double r2084586 = r2084585 * r2084574;
double r2084587 = r2084586 * r2084574;
double r2084588 = r2084579 + r2084587;
double r2084589 = 15.0;
double r2084590 = /* ERROR: no complex support in C */;
double r2084591 = r2084590 * r2084574;
double r2084592 = r2084591 * r2084574;
double r2084593 = r2084592 * r2084574;
double r2084594 = r2084593 * r2084574;
double r2084595 = r2084588 + r2084594;
double r2084596 = 20.0;
double r2084597 = /* ERROR: no complex support in C */;
double r2084598 = r2084597 * r2084574;
double r2084599 = r2084598 * r2084574;
double r2084600 = r2084599 * r2084574;
double r2084601 = r2084595 + r2084600;
double r2084602 = r2084601 + r2084592;
double r2084603 = r2084602 + r2084583;
double r2084604 = /* ERROR: no complex support in C */;
double r2084605 = r2084603 + r2084604;
double r2084606 = /* ERROR: no complex support in C */;
return r2084606;
}
double f() {
double r2084607 = -5.0;
double r2084608 = -24.0;
double r2084609 = /* ERROR: no complex support in C */;
double r2084610 = 24.0;
double r2084611 = /* ERROR: no complex support in C */;
double r2084612 = 0.0;
double r2084613 = 8.0;
double r2084614 = /* ERROR: no complex support in C */;
double r2084615 = r2084611 + r2084614;
double r2084616 = 40.0;
double r2084617 = /* ERROR: no complex support in C */;
double r2084618 = -60.0;
double r2084619 = /* ERROR: no complex support in C */;
double r2084620 = r2084617 + r2084619;
double r2084621 = r2084615 + r2084620;
double r2084622 = r2084609 + r2084621;
double r2084623 = /* ERROR: no complex support in C */;
return r2084623;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019112 +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))))