\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 r41381 = 1.0;
double r41382 = -r41381;
double r41383 = 2.0;
double r41384 = r41382 / r41383;
double r41385 = 3.0;
double r41386 = sqrt(r41385);
double r41387 = r41386 / r41383;
double r41388 = /* ERROR: no complex support in C */;
double r41389 = r41388 * r41388;
double r41390 = r41389 * r41388;
double r41391 = r41390 * r41388;
double r41392 = -r41383;
double r41393 = 0.0;
double r41394 = /* ERROR: no complex support in C */;
double r41395 = r41394 * r41388;
double r41396 = r41395 * r41388;
double r41397 = r41396 * r41388;
double r41398 = r41391 + r41397;
double r41399 = 5.0;
double r41400 = /* ERROR: no complex support in C */;
double r41401 = r41400 * r41388;
double r41402 = r41401 * r41388;
double r41403 = r41398 + r41402;
double r41404 = 4.0;
double r41405 = /* ERROR: no complex support in C */;
double r41406 = r41405 * r41388;
double r41407 = r41403 + r41406;
double r41408 = 7.0;
double r41409 = /* ERROR: no complex support in C */;
double r41410 = r41407 + r41409;
double r41411 = /* ERROR: no complex support in C */;
return r41411;
}
double f() {
double r41412 = 1.0;
double r41413 = -r41412;
double r41414 = 2.0;
double r41415 = r41413 / r41414;
double r41416 = 3.0;
double r41417 = sqrt(r41416);
double r41418 = r41417 / r41414;
double r41419 = /* ERROR: no complex support in C */;
double r41420 = r41419 * r41419;
double r41421 = r41420 * r41419;
double r41422 = r41421 * r41419;
double r41423 = -r41414;
double r41424 = 0.0;
double r41425 = /* ERROR: no complex support in C */;
double r41426 = r41425 * r41419;
double r41427 = r41426 * r41419;
double r41428 = r41427 * r41419;
double r41429 = r41422 + r41428;
double r41430 = 5.0;
double r41431 = /* ERROR: no complex support in C */;
double r41432 = r41431 * r41419;
double r41433 = r41432 * r41419;
double r41434 = r41429 + r41433;
double r41435 = 4.0;
double r41436 = /* ERROR: no complex support in C */;
double r41437 = r41436 * r41419;
double r41438 = r41434 + r41437;
double r41439 = 7.0;
double r41440 = /* ERROR: no complex support in C */;
double r41441 = r41438 + r41440;
double r41442 = /* ERROR: no complex support in C */;
return r41442;
}
Initial program 0
Final simplification0
herbie shell --seed 2020034
(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))))