\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 r27942 = 1.0;
double r27943 = -r27942;
double r27944 = 2.0;
double r27945 = r27943 / r27944;
double r27946 = 3.0;
double r27947 = sqrt(r27946);
double r27948 = r27947 / r27944;
double r27949 = /* ERROR: no complex support in C */;
double r27950 = r27949 * r27949;
double r27951 = r27950 * r27949;
double r27952 = r27951 * r27949;
double r27953 = -r27944;
double r27954 = 0.0;
double r27955 = /* ERROR: no complex support in C */;
double r27956 = r27955 * r27949;
double r27957 = r27956 * r27949;
double r27958 = r27957 * r27949;
double r27959 = r27952 + r27958;
double r27960 = 5.0;
double r27961 = /* ERROR: no complex support in C */;
double r27962 = r27961 * r27949;
double r27963 = r27962 * r27949;
double r27964 = r27959 + r27963;
double r27965 = 4.0;
double r27966 = /* ERROR: no complex support in C */;
double r27967 = r27966 * r27949;
double r27968 = r27964 + r27967;
double r27969 = 7.0;
double r27970 = /* ERROR: no complex support in C */;
double r27971 = r27968 + r27970;
double r27972 = /* ERROR: no complex support in C */;
return r27972;
}
double f() {
double r27973 = 1.0;
double r27974 = -r27973;
double r27975 = 2.0;
double r27976 = r27974 / r27975;
double r27977 = 3.0;
double r27978 = sqrt(r27977);
double r27979 = r27978 / r27975;
double r27980 = /* ERROR: no complex support in C */;
double r27981 = r27980 * r27980;
double r27982 = r27981 * r27980;
double r27983 = r27982 * r27980;
double r27984 = -r27975;
double r27985 = 0.0;
double r27986 = /* ERROR: no complex support in C */;
double r27987 = r27986 * r27980;
double r27988 = r27987 * r27980;
double r27989 = r27988 * r27980;
double r27990 = r27983 + r27989;
double r27991 = 5.0;
double r27992 = /* ERROR: no complex support in C */;
double r27993 = r27992 * r27980;
double r27994 = r27993 * r27980;
double r27995 = r27990 + r27994;
double r27996 = 4.0;
double r27997 = /* ERROR: no complex support in C */;
double r27998 = r27997 * r27980;
double r27999 = r27995 + r27998;
double r28000 = 7.0;
double r28001 = /* ERROR: no complex support in C */;
double r28002 = r27999 + r28001;
double r28003 = /* ERROR: no complex support in C */;
return r28003;
}
Initial program 0
Final simplification0
herbie shell --seed 2019235
(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))))