\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(\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))
double f() {
double r16671 = -1.0;
double r16672 = 1.0;
double r16673 = /* ERROR: no complex support in C */;
double r16674 = r16673 * r16673;
double r16675 = r16674 * r16673;
double r16676 = r16675 * r16673;
double r16677 = r16676 * r16673;
double r16678 = r16677 * r16673;
double r16679 = 6.0;
double r16680 = 0.0;
double r16681 = /* ERROR: no complex support in C */;
double r16682 = r16681 * r16673;
double r16683 = r16682 * r16673;
double r16684 = r16683 * r16673;
double r16685 = r16684 * r16673;
double r16686 = r16685 * r16673;
double r16687 = r16678 + r16686;
double r16688 = 15.0;
double r16689 = /* ERROR: no complex support in C */;
double r16690 = r16689 * r16673;
double r16691 = r16690 * r16673;
double r16692 = r16691 * r16673;
double r16693 = r16692 * r16673;
double r16694 = r16687 + r16693;
double r16695 = 20.0;
double r16696 = /* ERROR: no complex support in C */;
double r16697 = r16696 * r16673;
double r16698 = r16697 * r16673;
double r16699 = r16698 * r16673;
double r16700 = r16694 + r16699;
double r16701 = r16700 + r16691;
double r16702 = r16701 + r16682;
double r16703 = /* ERROR: no complex support in C */;
double r16704 = r16702 + r16703;
double r16705 = /* ERROR: no complex support in C */;
return r16705;
}
double f() {
double r16706 = -1.0;
double r16707 = 1.0;
double r16708 = /* ERROR: no complex support in C */;
double r16709 = r16708 * r16708;
double r16710 = r16709 * r16708;
double r16711 = r16710 * r16708;
double r16712 = r16711 * r16708;
double r16713 = r16712 * r16708;
double r16714 = 6.0;
double r16715 = 0.0;
double r16716 = /* ERROR: no complex support in C */;
double r16717 = r16716 * r16708;
double r16718 = r16717 * r16708;
double r16719 = r16718 * r16708;
double r16720 = r16719 * r16708;
double r16721 = r16720 * r16708;
double r16722 = r16713 + r16721;
double r16723 = 15.0;
double r16724 = /* ERROR: no complex support in C */;
double r16725 = r16724 * r16708;
double r16726 = r16725 * r16708;
double r16727 = r16726 * r16708;
double r16728 = r16727 * r16708;
double r16729 = r16722 + r16728;
double r16730 = 20.0;
double r16731 = /* ERROR: no complex support in C */;
double r16732 = r16731 * r16708;
double r16733 = r16732 * r16708;
double r16734 = r16733 * r16708;
double r16735 = r16729 + r16734;
double r16736 = r16735 + r16726;
double r16737 = r16736 + r16717;
double r16738 = /* ERROR: no complex support in C */;
double r16739 = r16737 + r16738;
double r16740 = /* ERROR: no complex support in C */;
return r16740;
}
Initial program 0
Final simplification0
herbie shell --seed 2019346 +o rules:numerics
(FPCore ()
:name "3.9.1 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (* (* (* (* (* (complex 6 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (complex 20 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1))) (* (complex 6 0.0) (complex -1 1))) (complex 1 0.0))))