\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 r19862 = 1.0;
double r19863 = -r19862;
double r19864 = 2.0;
double r19865 = r19863 / r19864;
double r19866 = 3.0;
double r19867 = sqrt(r19866);
double r19868 = r19867 / r19864;
double r19869 = /* ERROR: no complex support in C */;
double r19870 = r19869 * r19869;
double r19871 = r19870 * r19869;
double r19872 = r19871 * r19869;
double r19873 = -r19864;
double r19874 = 0.0;
double r19875 = /* ERROR: no complex support in C */;
double r19876 = r19875 * r19869;
double r19877 = r19876 * r19869;
double r19878 = r19877 * r19869;
double r19879 = r19872 + r19878;
double r19880 = 5.0;
double r19881 = /* ERROR: no complex support in C */;
double r19882 = r19881 * r19869;
double r19883 = r19882 * r19869;
double r19884 = r19879 + r19883;
double r19885 = 4.0;
double r19886 = /* ERROR: no complex support in C */;
double r19887 = r19886 * r19869;
double r19888 = r19884 + r19887;
double r19889 = 7.0;
double r19890 = /* ERROR: no complex support in C */;
double r19891 = r19888 + r19890;
double r19892 = /* ERROR: no complex support in C */;
return r19892;
}
double f() {
double r19893 = 1.0;
double r19894 = -r19893;
double r19895 = 2.0;
double r19896 = r19894 / r19895;
double r19897 = 3.0;
double r19898 = sqrt(r19897);
double r19899 = r19898 / r19895;
double r19900 = /* ERROR: no complex support in C */;
double r19901 = r19900 * r19900;
double r19902 = r19901 * r19900;
double r19903 = r19902 * r19900;
double r19904 = -r19895;
double r19905 = 0.0;
double r19906 = /* ERROR: no complex support in C */;
double r19907 = r19906 * r19900;
double r19908 = r19907 * r19900;
double r19909 = r19908 * r19900;
double r19910 = r19903 + r19909;
double r19911 = 5.0;
double r19912 = /* ERROR: no complex support in C */;
double r19913 = r19912 * r19900;
double r19914 = r19913 * r19900;
double r19915 = r19910 + r19914;
double r19916 = 4.0;
double r19917 = /* ERROR: no complex support in C */;
double r19918 = r19917 * r19900;
double r19919 = r19915 + r19918;
double r19920 = 7.0;
double r19921 = /* ERROR: no complex support in C */;
double r19922 = r19919 + r19921;
double r19923 = /* ERROR: no complex support in C */;
return r19923;
}
Initial program 0
Final simplification0
herbie shell --seed 2019303
(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))))