\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 r36909 = 1.0;
double r36910 = -r36909;
double r36911 = 2.0;
double r36912 = r36910 / r36911;
double r36913 = 3.0;
double r36914 = sqrt(r36913);
double r36915 = r36914 / r36911;
double r36916 = /* ERROR: no complex support in C */;
double r36917 = r36916 * r36916;
double r36918 = r36917 * r36916;
double r36919 = r36918 * r36916;
double r36920 = -r36911;
double r36921 = 0.0;
double r36922 = /* ERROR: no complex support in C */;
double r36923 = r36922 * r36916;
double r36924 = r36923 * r36916;
double r36925 = r36924 * r36916;
double r36926 = r36919 + r36925;
double r36927 = 5.0;
double r36928 = /* ERROR: no complex support in C */;
double r36929 = r36928 * r36916;
double r36930 = r36929 * r36916;
double r36931 = r36926 + r36930;
double r36932 = 4.0;
double r36933 = /* ERROR: no complex support in C */;
double r36934 = r36933 * r36916;
double r36935 = r36931 + r36934;
double r36936 = 7.0;
double r36937 = /* ERROR: no complex support in C */;
double r36938 = r36935 + r36937;
double r36939 = /* ERROR: no complex support in C */;
return r36939;
}
double f() {
double r36940 = 1.0;
double r36941 = -r36940;
double r36942 = 2.0;
double r36943 = r36941 / r36942;
double r36944 = 3.0;
double r36945 = sqrt(r36944);
double r36946 = r36945 / r36942;
double r36947 = /* ERROR: no complex support in C */;
double r36948 = r36947 * r36947;
double r36949 = r36948 * r36947;
double r36950 = r36949 * r36947;
double r36951 = -r36942;
double r36952 = 0.0;
double r36953 = /* ERROR: no complex support in C */;
double r36954 = r36953 * r36947;
double r36955 = r36954 * r36947;
double r36956 = r36955 * r36947;
double r36957 = r36950 + r36956;
double r36958 = 5.0;
double r36959 = /* ERROR: no complex support in C */;
double r36960 = r36959 * r36947;
double r36961 = r36960 * r36947;
double r36962 = r36957 + r36961;
double r36963 = 4.0;
double r36964 = /* ERROR: no complex support in C */;
double r36965 = r36964 * r36947;
double r36966 = r36962 + r36965;
double r36967 = 7.0;
double r36968 = /* ERROR: no complex support in C */;
double r36969 = r36966 + r36968;
double r36970 = /* ERROR: no complex support in C */;
return r36970;
}
Initial program 0
Final simplification0
herbie shell --seed 2019209
(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))))