\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 r21223 = 1.0;
double r21224 = -r21223;
double r21225 = 2.0;
double r21226 = r21224 / r21225;
double r21227 = 3.0;
double r21228 = sqrt(r21227);
double r21229 = r21228 / r21225;
double r21230 = /* ERROR: no complex support in C */;
double r21231 = r21230 * r21230;
double r21232 = r21231 * r21230;
double r21233 = r21232 * r21230;
double r21234 = -r21225;
double r21235 = 0.0;
double r21236 = /* ERROR: no complex support in C */;
double r21237 = r21236 * r21230;
double r21238 = r21237 * r21230;
double r21239 = r21238 * r21230;
double r21240 = r21233 + r21239;
double r21241 = 5.0;
double r21242 = /* ERROR: no complex support in C */;
double r21243 = r21242 * r21230;
double r21244 = r21243 * r21230;
double r21245 = r21240 + r21244;
double r21246 = 4.0;
double r21247 = /* ERROR: no complex support in C */;
double r21248 = r21247 * r21230;
double r21249 = r21245 + r21248;
double r21250 = 7.0;
double r21251 = /* ERROR: no complex support in C */;
double r21252 = r21249 + r21251;
double r21253 = /* ERROR: no complex support in C */;
return r21253;
}
double f() {
double r21254 = 1.0;
double r21255 = -r21254;
double r21256 = 2.0;
double r21257 = r21255 / r21256;
double r21258 = 3.0;
double r21259 = sqrt(r21258);
double r21260 = r21259 / r21256;
double r21261 = /* ERROR: no complex support in C */;
double r21262 = r21261 * r21261;
double r21263 = r21262 * r21261;
double r21264 = r21263 * r21261;
double r21265 = -r21256;
double r21266 = 0.0;
double r21267 = /* ERROR: no complex support in C */;
double r21268 = r21267 * r21261;
double r21269 = r21268 * r21261;
double r21270 = r21269 * r21261;
double r21271 = r21264 + r21270;
double r21272 = 5.0;
double r21273 = /* ERROR: no complex support in C */;
double r21274 = r21273 * r21261;
double r21275 = r21274 * r21261;
double r21276 = r21271 + r21275;
double r21277 = 4.0;
double r21278 = /* ERROR: no complex support in C */;
double r21279 = r21278 * r21261;
double r21280 = r21276 + r21279;
double r21281 = 7.0;
double r21282 = /* ERROR: no complex support in C */;
double r21283 = r21280 + r21282;
double r21284 = /* ERROR: no complex support in C */;
return r21284;
}
Initial program 0
Final simplification0
herbie shell --seed 2020046 +o rules:numerics
(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))))