\Im(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))\Im(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(\left(\left(\left(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(\left(5 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(\left(4 + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r21685 = 1.0;
double r21686 = -r21685;
double r21687 = 2.0;
double r21688 = r21686 / r21687;
double r21689 = 3.0;
double r21690 = sqrt(r21689);
double r21691 = r21690 / r21687;
double r21692 = /* ERROR: no complex support in C */;
double r21693 = r21692 * r21692;
double r21694 = r21693 * r21692;
double r21695 = r21694 * r21692;
double r21696 = -r21687;
double r21697 = 0.0;
double r21698 = /* ERROR: no complex support in C */;
double r21699 = r21698 * r21692;
double r21700 = r21699 * r21692;
double r21701 = r21700 * r21692;
double r21702 = r21695 + r21701;
double r21703 = 5.0;
double r21704 = /* ERROR: no complex support in C */;
double r21705 = r21704 * r21692;
double r21706 = r21705 * r21692;
double r21707 = r21702 + r21706;
double r21708 = 4.0;
double r21709 = /* ERROR: no complex support in C */;
double r21710 = r21709 * r21692;
double r21711 = r21707 + r21710;
double r21712 = 7.0;
double r21713 = /* ERROR: no complex support in C */;
double r21714 = r21711 + r21713;
double r21715 = /* ERROR: no complex support in C */;
return r21715;
}
double f() {
double r21716 = 1.0;
double r21717 = -r21716;
double r21718 = 2.0;
double r21719 = r21717 / r21718;
double r21720 = 3.0;
double r21721 = sqrt(r21720);
double r21722 = r21721 / r21718;
double r21723 = /* ERROR: no complex support in C */;
double r21724 = r21723 * r21723;
double r21725 = r21724 * r21723;
double r21726 = r21725 * r21723;
double r21727 = -r21718;
double r21728 = 0.0;
double r21729 = /* ERROR: no complex support in C */;
double r21730 = r21729 * r21723;
double r21731 = r21730 * r21723;
double r21732 = r21731 * r21723;
double r21733 = r21726 + r21732;
double r21734 = 5.0;
double r21735 = /* ERROR: no complex support in C */;
double r21736 = r21735 * r21723;
double r21737 = r21736 * r21723;
double r21738 = r21733 + r21737;
double r21739 = 4.0;
double r21740 = /* ERROR: no complex support in C */;
double r21741 = r21740 * r21723;
double r21742 = r21738 + r21741;
double r21743 = 7.0;
double r21744 = /* ERROR: no complex support in C */;
double r21745 = r21742 + r21744;
double r21746 = /* ERROR: no complex support in C */;
return r21746;
}
Initial program 0
Final simplification0
herbie shell --seed 2019323
(FPCore ()
:name "3.9.2 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (* (* (* (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (* (* (* (complex (- 2) 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (* (complex 5 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (complex 4 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0.0))))