\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 r3972 = 1.0;
double r3973 = -r3972;
double r3974 = 2.0;
double r3975 = r3973 / r3974;
double r3976 = 3.0;
double r3977 = sqrt(r3976);
double r3978 = r3977 / r3974;
double r3979 = /* ERROR: no complex support in C */;
double r3980 = r3979 * r3979;
double r3981 = r3980 * r3979;
double r3982 = r3981 * r3979;
double r3983 = -r3974;
double r3984 = 0.0;
double r3985 = /* ERROR: no complex support in C */;
double r3986 = r3985 * r3979;
double r3987 = r3986 * r3979;
double r3988 = r3987 * r3979;
double r3989 = r3982 + r3988;
double r3990 = 5.0;
double r3991 = /* ERROR: no complex support in C */;
double r3992 = r3991 * r3979;
double r3993 = r3992 * r3979;
double r3994 = r3989 + r3993;
double r3995 = 4.0;
double r3996 = /* ERROR: no complex support in C */;
double r3997 = r3996 * r3979;
double r3998 = r3994 + r3997;
double r3999 = 7.0;
double r4000 = /* ERROR: no complex support in C */;
double r4001 = r3998 + r4000;
double r4002 = /* ERROR: no complex support in C */;
return r4002;
}
double f() {
double r4003 = 1.0;
double r4004 = -r4003;
double r4005 = 2.0;
double r4006 = r4004 / r4005;
double r4007 = 3.0;
double r4008 = sqrt(r4007);
double r4009 = r4008 / r4005;
double r4010 = /* ERROR: no complex support in C */;
double r4011 = r4010 * r4010;
double r4012 = r4011 * r4010;
double r4013 = r4012 * r4010;
double r4014 = -r4005;
double r4015 = 0.0;
double r4016 = /* ERROR: no complex support in C */;
double r4017 = r4016 * r4010;
double r4018 = r4017 * r4010;
double r4019 = r4018 * r4010;
double r4020 = r4013 + r4019;
double r4021 = 5.0;
double r4022 = /* ERROR: no complex support in C */;
double r4023 = r4022 * r4010;
double r4024 = r4023 * r4010;
double r4025 = r4020 + r4024;
double r4026 = 4.0;
double r4027 = /* ERROR: no complex support in C */;
double r4028 = r4027 * r4010;
double r4029 = r4025 + r4028;
double r4030 = 7.0;
double r4031 = /* ERROR: no complex support in C */;
double r4032 = r4029 + r4031;
double r4033 = /* ERROR: no complex support in C */;
return r4033;
}
Initial program 0
Final simplification0
herbie shell --seed 2020045
(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))))