\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(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(15 + 0.0 i\right)\right)\right) + \left(\left(\left(\left(-1 + 1 i\right) \cdot \left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(15 + 0.0 i\right)\right)\right)\right)\right)\right)\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r27633 = -1.0;
double r27634 = 1.0;
double r27635 = /* ERROR: no complex support in C */;
double r27636 = r27635 * r27635;
double r27637 = r27636 * r27635;
double r27638 = r27637 * r27635;
double r27639 = r27638 * r27635;
double r27640 = r27639 * r27635;
double r27641 = 6.0;
double r27642 = 0.0;
double r27643 = /* ERROR: no complex support in C */;
double r27644 = r27643 * r27635;
double r27645 = r27644 * r27635;
double r27646 = r27645 * r27635;
double r27647 = r27646 * r27635;
double r27648 = r27647 * r27635;
double r27649 = r27640 + r27648;
double r27650 = 15.0;
double r27651 = /* ERROR: no complex support in C */;
double r27652 = r27651 * r27635;
double r27653 = r27652 * r27635;
double r27654 = r27653 * r27635;
double r27655 = r27654 * r27635;
double r27656 = r27649 + r27655;
double r27657 = 20.0;
double r27658 = /* ERROR: no complex support in C */;
double r27659 = r27658 * r27635;
double r27660 = r27659 * r27635;
double r27661 = r27660 * r27635;
double r27662 = r27656 + r27661;
double r27663 = r27662 + r27653;
double r27664 = r27663 + r27644;
double r27665 = /* ERROR: no complex support in C */;
double r27666 = r27664 + r27665;
double r27667 = /* ERROR: no complex support in C */;
return r27667;
}
double f() {
double r27668 = 6.0;
double r27669 = 0.0;
double r27670 = /* ERROR: no complex support in C */;
double r27671 = -1.0;
double r27672 = 1.0;
double r27673 = /* ERROR: no complex support in C */;
double r27674 = r27670 * r27673;
double r27675 = 15.0;
double r27676 = /* ERROR: no complex support in C */;
double r27677 = r27673 * r27676;
double r27678 = r27673 * r27677;
double r27679 = 20.0;
double r27680 = /* ERROR: no complex support in C */;
double r27681 = r27680 * r27673;
double r27682 = r27673 * r27681;
double r27683 = r27682 * r27673;
double r27684 = r27673 * r27674;
double r27685 = r27684 * r27673;
double r27686 = r27673 * r27685;
double r27687 = r27686 * r27673;
double r27688 = r27673 * r27673;
double r27689 = r27688 * r27673;
double r27690 = r27673 * r27689;
double r27691 = r27673 * r27690;
double r27692 = r27691 * r27673;
double r27693 = r27687 + r27692;
double r27694 = r27673 * r27678;
double r27695 = r27673 * r27694;
double r27696 = r27693 + r27695;
double r27697 = r27683 + r27696;
double r27698 = r27678 + r27697;
double r27699 = r27674 + r27698;
double r27700 = /* ERROR: no complex support in C */;
double r27701 = r27699 + r27700;
double r27702 = /* ERROR: no complex support in C */;
return r27702;
}
Initial program 0
Final simplification0
herbie shell --seed 2019194 +o rules:numerics
(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))))