\Im(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) + \left(\left(\left(\left(\left(-2.0\right) + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\left(5.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(4.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))\Im(\left(\left(\left(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(\left(-2.0\right) + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right)\right)\right) + \left(\left(\left(5.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(4.0 + 0.0 i\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))double f() {
double r2460724 = 1.0;
double r2460725 = -r2460724;
double r2460726 = 2.0;
double r2460727 = r2460725 / r2460726;
double r2460728 = 3.0;
double r2460729 = sqrt(r2460728);
double r2460730 = r2460729 / r2460726;
double r2460731 = /* ERROR: no complex support in C */;
double r2460732 = r2460731 * r2460731;
double r2460733 = r2460732 * r2460731;
double r2460734 = r2460733 * r2460731;
double r2460735 = -r2460726;
double r2460736 = 0.0;
double r2460737 = /* ERROR: no complex support in C */;
double r2460738 = r2460737 * r2460731;
double r2460739 = r2460738 * r2460731;
double r2460740 = r2460739 * r2460731;
double r2460741 = r2460734 + r2460740;
double r2460742 = 5.0;
double r2460743 = /* ERROR: no complex support in C */;
double r2460744 = r2460743 * r2460731;
double r2460745 = r2460744 * r2460731;
double r2460746 = r2460741 + r2460745;
double r2460747 = 4.0;
double r2460748 = /* ERROR: no complex support in C */;
double r2460749 = r2460748 * r2460731;
double r2460750 = r2460746 + r2460749;
double r2460751 = 7.0;
double r2460752 = /* ERROR: no complex support in C */;
double r2460753 = r2460750 + r2460752;
double r2460754 = /* ERROR: no complex support in C */;
return r2460754;
}
double f() {
double r2460755 = 1.0;
double r2460756 = -r2460755;
double r2460757 = 2.0;
double r2460758 = r2460756 / r2460757;
double r2460759 = 3.0;
double r2460760 = sqrt(r2460759);
double r2460761 = r2460760 / r2460757;
double r2460762 = /* ERROR: no complex support in C */;
double r2460763 = r2460762 * r2460762;
double r2460764 = r2460763 * r2460762;
double r2460765 = r2460762 * r2460764;
double r2460766 = -r2460757;
double r2460767 = 0.0;
double r2460768 = /* ERROR: no complex support in C */;
double r2460769 = r2460768 * r2460762;
double r2460770 = r2460762 * r2460769;
double r2460771 = r2460762 * r2460770;
double r2460772 = r2460765 + r2460771;
double r2460773 = 5.0;
double r2460774 = /* ERROR: no complex support in C */;
double r2460775 = r2460774 * r2460762;
double r2460776 = r2460775 * r2460762;
double r2460777 = r2460772 + r2460776;
double r2460778 = 4.0;
double r2460779 = /* ERROR: no complex support in C */;
double r2460780 = r2460762 * r2460779;
double r2460781 = r2460777 + r2460780;
double r2460782 = 7.0;
double r2460783 = /* ERROR: no complex support in C */;
double r2460784 = r2460781 + r2460783;
double r2460785 = /* ERROR: no complex support in C */;
return r2460785;
}
Initial program 0
Final simplification0
herbie shell --seed 2019165
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (*.c (*.c (*.c (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (*.c (*.c (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (*.c (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))