\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 r40284 = 1.0;
double r40285 = -r40284;
double r40286 = 2.0;
double r40287 = r40285 / r40286;
double r40288 = 3.0;
double r40289 = sqrt(r40288);
double r40290 = r40289 / r40286;
double r40291 = /* ERROR: no complex support in C */;
double r40292 = r40291 * r40291;
double r40293 = r40292 * r40291;
double r40294 = r40293 * r40291;
double r40295 = -r40286;
double r40296 = 0.0;
double r40297 = /* ERROR: no complex support in C */;
double r40298 = r40297 * r40291;
double r40299 = r40298 * r40291;
double r40300 = r40299 * r40291;
double r40301 = r40294 + r40300;
double r40302 = 5.0;
double r40303 = /* ERROR: no complex support in C */;
double r40304 = r40303 * r40291;
double r40305 = r40304 * r40291;
double r40306 = r40301 + r40305;
double r40307 = 4.0;
double r40308 = /* ERROR: no complex support in C */;
double r40309 = r40308 * r40291;
double r40310 = r40306 + r40309;
double r40311 = 7.0;
double r40312 = /* ERROR: no complex support in C */;
double r40313 = r40310 + r40312;
double r40314 = /* ERROR: no complex support in C */;
return r40314;
}
double f() {
double r40315 = 1.0;
double r40316 = -r40315;
double r40317 = 2.0;
double r40318 = r40316 / r40317;
double r40319 = 3.0;
double r40320 = sqrt(r40319);
double r40321 = r40320 / r40317;
double r40322 = /* ERROR: no complex support in C */;
double r40323 = r40322 * r40322;
double r40324 = r40323 * r40322;
double r40325 = r40324 * r40322;
double r40326 = -r40317;
double r40327 = 0.0;
double r40328 = /* ERROR: no complex support in C */;
double r40329 = r40328 * r40322;
double r40330 = r40329 * r40322;
double r40331 = r40330 * r40322;
double r40332 = r40325 + r40331;
double r40333 = 5.0;
double r40334 = /* ERROR: no complex support in C */;
double r40335 = r40334 * r40322;
double r40336 = r40335 * r40322;
double r40337 = r40332 + r40336;
double r40338 = 4.0;
double r40339 = /* ERROR: no complex support in C */;
double r40340 = r40339 * r40322;
double r40341 = r40337 + r40340;
double r40342 = 7.0;
double r40343 = /* ERROR: no complex support in C */;
double r40344 = r40341 + r40343;
double r40345 = /* ERROR: no complex support in C */;
return r40345;
}
Initial program 0
Final simplification0
herbie shell --seed 2019353
(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))))