\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 r41346 = 1.0;
double r41347 = -r41346;
double r41348 = 2.0;
double r41349 = r41347 / r41348;
double r41350 = 3.0;
double r41351 = sqrt(r41350);
double r41352 = r41351 / r41348;
double r41353 = /* ERROR: no complex support in C */;
double r41354 = r41353 * r41353;
double r41355 = r41354 * r41353;
double r41356 = r41355 * r41353;
double r41357 = -r41348;
double r41358 = 0.0;
double r41359 = /* ERROR: no complex support in C */;
double r41360 = r41359 * r41353;
double r41361 = r41360 * r41353;
double r41362 = r41361 * r41353;
double r41363 = r41356 + r41362;
double r41364 = 5.0;
double r41365 = /* ERROR: no complex support in C */;
double r41366 = r41365 * r41353;
double r41367 = r41366 * r41353;
double r41368 = r41363 + r41367;
double r41369 = 4.0;
double r41370 = /* ERROR: no complex support in C */;
double r41371 = r41370 * r41353;
double r41372 = r41368 + r41371;
double r41373 = 7.0;
double r41374 = /* ERROR: no complex support in C */;
double r41375 = r41372 + r41374;
double r41376 = /* ERROR: no complex support in C */;
return r41376;
}
double f() {
double r41377 = 1.0;
double r41378 = -r41377;
double r41379 = 2.0;
double r41380 = r41378 / r41379;
double r41381 = 3.0;
double r41382 = sqrt(r41381);
double r41383 = r41382 / r41379;
double r41384 = /* ERROR: no complex support in C */;
double r41385 = r41384 * r41384;
double r41386 = r41385 * r41384;
double r41387 = r41386 * r41384;
double r41388 = -r41379;
double r41389 = 0.0;
double r41390 = /* ERROR: no complex support in C */;
double r41391 = r41390 * r41384;
double r41392 = r41391 * r41384;
double r41393 = r41392 * r41384;
double r41394 = r41387 + r41393;
double r41395 = 5.0;
double r41396 = /* ERROR: no complex support in C */;
double r41397 = r41396 * r41384;
double r41398 = r41397 * r41384;
double r41399 = r41394 + r41398;
double r41400 = 4.0;
double r41401 = /* ERROR: no complex support in C */;
double r41402 = r41401 * r41384;
double r41403 = r41399 + r41402;
double r41404 = 7.0;
double r41405 = /* ERROR: no complex support in C */;
double r41406 = r41403 + r41405;
double r41407 = /* ERROR: no complex support in C */;
return r41407;
}
Initial program 0
Final simplification0
herbie shell --seed 2019202
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(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))))