\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 r22326 = 1.0;
double r22327 = -r22326;
double r22328 = 2.0;
double r22329 = r22327 / r22328;
double r22330 = 3.0;
double r22331 = sqrt(r22330);
double r22332 = r22331 / r22328;
double r22333 = /* ERROR: no complex support in C */;
double r22334 = r22333 * r22333;
double r22335 = r22334 * r22333;
double r22336 = r22335 * r22333;
double r22337 = -r22328;
double r22338 = 0.0;
double r22339 = /* ERROR: no complex support in C */;
double r22340 = r22339 * r22333;
double r22341 = r22340 * r22333;
double r22342 = r22341 * r22333;
double r22343 = r22336 + r22342;
double r22344 = 5.0;
double r22345 = /* ERROR: no complex support in C */;
double r22346 = r22345 * r22333;
double r22347 = r22346 * r22333;
double r22348 = r22343 + r22347;
double r22349 = 4.0;
double r22350 = /* ERROR: no complex support in C */;
double r22351 = r22350 * r22333;
double r22352 = r22348 + r22351;
double r22353 = 7.0;
double r22354 = /* ERROR: no complex support in C */;
double r22355 = r22352 + r22354;
double r22356 = /* ERROR: no complex support in C */;
return r22356;
}
double f() {
double r22357 = 1.0;
double r22358 = -r22357;
double r22359 = 2.0;
double r22360 = r22358 / r22359;
double r22361 = 3.0;
double r22362 = sqrt(r22361);
double r22363 = r22362 / r22359;
double r22364 = /* ERROR: no complex support in C */;
double r22365 = r22364 * r22364;
double r22366 = r22365 * r22364;
double r22367 = r22366 * r22364;
double r22368 = -r22359;
double r22369 = 0.0;
double r22370 = /* ERROR: no complex support in C */;
double r22371 = r22370 * r22364;
double r22372 = r22371 * r22364;
double r22373 = r22372 * r22364;
double r22374 = r22367 + r22373;
double r22375 = 5.0;
double r22376 = /* ERROR: no complex support in C */;
double r22377 = r22376 * r22364;
double r22378 = r22377 * r22364;
double r22379 = r22374 + r22378;
double r22380 = 4.0;
double r22381 = /* ERROR: no complex support in C */;
double r22382 = r22381 * r22364;
double r22383 = r22379 + r22382;
double r22384 = 7.0;
double r22385 = /* ERROR: no complex support in C */;
double r22386 = r22383 + r22385;
double r22387 = /* ERROR: no complex support in C */;
return r22387;
}
Initial program 0
Final simplification0
herbie shell --seed 2019308
(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))))