\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 r22796 = 1.0;
double r22797 = -r22796;
double r22798 = 2.0;
double r22799 = r22797 / r22798;
double r22800 = 3.0;
double r22801 = sqrt(r22800);
double r22802 = r22801 / r22798;
double r22803 = /* ERROR: no complex support in C */;
double r22804 = r22803 * r22803;
double r22805 = r22804 * r22803;
double r22806 = r22805 * r22803;
double r22807 = -r22798;
double r22808 = 0.0;
double r22809 = /* ERROR: no complex support in C */;
double r22810 = r22809 * r22803;
double r22811 = r22810 * r22803;
double r22812 = r22811 * r22803;
double r22813 = r22806 + r22812;
double r22814 = 5.0;
double r22815 = /* ERROR: no complex support in C */;
double r22816 = r22815 * r22803;
double r22817 = r22816 * r22803;
double r22818 = r22813 + r22817;
double r22819 = 4.0;
double r22820 = /* ERROR: no complex support in C */;
double r22821 = r22820 * r22803;
double r22822 = r22818 + r22821;
double r22823 = 7.0;
double r22824 = /* ERROR: no complex support in C */;
double r22825 = r22822 + r22824;
double r22826 = /* ERROR: no complex support in C */;
return r22826;
}
double f() {
double r22827 = 1.0;
double r22828 = -r22827;
double r22829 = 2.0;
double r22830 = r22828 / r22829;
double r22831 = 3.0;
double r22832 = sqrt(r22831);
double r22833 = r22832 / r22829;
double r22834 = /* ERROR: no complex support in C */;
double r22835 = r22834 * r22834;
double r22836 = r22835 * r22834;
double r22837 = r22836 * r22834;
double r22838 = -r22829;
double r22839 = 0.0;
double r22840 = /* ERROR: no complex support in C */;
double r22841 = r22840 * r22834;
double r22842 = r22841 * r22834;
double r22843 = r22842 * r22834;
double r22844 = r22837 + r22843;
double r22845 = 5.0;
double r22846 = /* ERROR: no complex support in C */;
double r22847 = r22846 * r22834;
double r22848 = r22847 * r22834;
double r22849 = r22844 + r22848;
double r22850 = 4.0;
double r22851 = /* ERROR: no complex support in C */;
double r22852 = r22851 * r22834;
double r22853 = r22849 + r22852;
double r22854 = 7.0;
double r22855 = /* ERROR: no complex support in C */;
double r22856 = r22853 + r22855;
double r22857 = /* ERROR: no complex support in C */;
return r22857;
}
Initial program 0
Final simplification0
herbie shell --seed 2019294
(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))))