\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 r44291 = 1.0;
double r44292 = -r44291;
double r44293 = 2.0;
double r44294 = r44292 / r44293;
double r44295 = 3.0;
double r44296 = sqrt(r44295);
double r44297 = r44296 / r44293;
double r44298 = /* ERROR: no complex support in C */;
double r44299 = r44298 * r44298;
double r44300 = r44299 * r44298;
double r44301 = r44300 * r44298;
double r44302 = -r44293;
double r44303 = 0.0;
double r44304 = /* ERROR: no complex support in C */;
double r44305 = r44304 * r44298;
double r44306 = r44305 * r44298;
double r44307 = r44306 * r44298;
double r44308 = r44301 + r44307;
double r44309 = 5.0;
double r44310 = /* ERROR: no complex support in C */;
double r44311 = r44310 * r44298;
double r44312 = r44311 * r44298;
double r44313 = r44308 + r44312;
double r44314 = 4.0;
double r44315 = /* ERROR: no complex support in C */;
double r44316 = r44315 * r44298;
double r44317 = r44313 + r44316;
double r44318 = 7.0;
double r44319 = /* ERROR: no complex support in C */;
double r44320 = r44317 + r44319;
double r44321 = /* ERROR: no complex support in C */;
return r44321;
}
double f() {
double r44322 = 1.0;
double r44323 = -r44322;
double r44324 = 2.0;
double r44325 = r44323 / r44324;
double r44326 = 3.0;
double r44327 = sqrt(r44326);
double r44328 = r44327 / r44324;
double r44329 = /* ERROR: no complex support in C */;
double r44330 = r44329 * r44329;
double r44331 = r44330 * r44329;
double r44332 = r44331 * r44329;
double r44333 = -r44324;
double r44334 = 0.0;
double r44335 = /* ERROR: no complex support in C */;
double r44336 = r44335 * r44329;
double r44337 = r44336 * r44329;
double r44338 = r44337 * r44329;
double r44339 = r44332 + r44338;
double r44340 = 5.0;
double r44341 = /* ERROR: no complex support in C */;
double r44342 = r44341 * r44329;
double r44343 = r44342 * r44329;
double r44344 = r44339 + r44343;
double r44345 = 4.0;
double r44346 = /* ERROR: no complex support in C */;
double r44347 = r44346 * r44329;
double r44348 = r44344 + r44347;
double r44349 = 7.0;
double r44350 = /* ERROR: no complex support in C */;
double r44351 = r44348 + r44350;
double r44352 = /* ERROR: no complex support in C */;
return r44352;
}
Initial program 0
Final simplification0
herbie shell --seed 2020081
(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))))