\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 r19939 = 1.0;
double r19940 = -r19939;
double r19941 = 2.0;
double r19942 = r19940 / r19941;
double r19943 = 3.0;
double r19944 = sqrt(r19943);
double r19945 = r19944 / r19941;
double r19946 = /* ERROR: no complex support in C */;
double r19947 = r19946 * r19946;
double r19948 = r19947 * r19946;
double r19949 = r19948 * r19946;
double r19950 = -r19941;
double r19951 = 0.0;
double r19952 = /* ERROR: no complex support in C */;
double r19953 = r19952 * r19946;
double r19954 = r19953 * r19946;
double r19955 = r19954 * r19946;
double r19956 = r19949 + r19955;
double r19957 = 5.0;
double r19958 = /* ERROR: no complex support in C */;
double r19959 = r19958 * r19946;
double r19960 = r19959 * r19946;
double r19961 = r19956 + r19960;
double r19962 = 4.0;
double r19963 = /* ERROR: no complex support in C */;
double r19964 = r19963 * r19946;
double r19965 = r19961 + r19964;
double r19966 = 7.0;
double r19967 = /* ERROR: no complex support in C */;
double r19968 = r19965 + r19967;
double r19969 = /* ERROR: no complex support in C */;
return r19969;
}
double f() {
double r19970 = 1.0;
double r19971 = -r19970;
double r19972 = 2.0;
double r19973 = r19971 / r19972;
double r19974 = 3.0;
double r19975 = sqrt(r19974);
double r19976 = r19975 / r19972;
double r19977 = /* ERROR: no complex support in C */;
double r19978 = r19977 * r19977;
double r19979 = r19978 * r19977;
double r19980 = r19979 * r19977;
double r19981 = -r19972;
double r19982 = 0.0;
double r19983 = /* ERROR: no complex support in C */;
double r19984 = r19983 * r19977;
double r19985 = r19984 * r19977;
double r19986 = r19985 * r19977;
double r19987 = r19980 + r19986;
double r19988 = 5.0;
double r19989 = /* ERROR: no complex support in C */;
double r19990 = r19989 * r19977;
double r19991 = r19990 * r19977;
double r19992 = r19987 + r19991;
double r19993 = 4.0;
double r19994 = /* ERROR: no complex support in C */;
double r19995 = r19994 * r19977;
double r19996 = r19992 + r19995;
double r19997 = 7.0;
double r19998 = /* ERROR: no complex support in C */;
double r19999 = r19996 + r19998;
double r20000 = /* ERROR: no complex support in C */;
return r20000;
}
Initial program 0
Final simplification0
herbie shell --seed 2020025
(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))))