\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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\Im(\left(\left(\frac{11}{2} + \left(\left(-\sqrt{3}\right) - \frac{\sqrt{3}}{2}\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))double f() {
double r808502 = 1.0;
double r808503 = -r808502;
double r808504 = 2.0;
double r808505 = r808503 / r808504;
double r808506 = 3.0;
double r808507 = sqrt(r808506);
double r808508 = r808507 / r808504;
double r808509 = /* ERROR: no complex support in C */;
double r808510 = r808509 * r808509;
double r808511 = r808510 * r808509;
double r808512 = r808511 * r808509;
double r808513 = -r808504;
double r808514 = 0.0;
double r808515 = /* ERROR: no complex support in C */;
double r808516 = r808515 * r808509;
double r808517 = r808516 * r808509;
double r808518 = r808517 * r808509;
double r808519 = r808512 + r808518;
double r808520 = 5.0;
double r808521 = /* ERROR: no complex support in C */;
double r808522 = r808521 * r808509;
double r808523 = r808522 * r808509;
double r808524 = r808519 + r808523;
double r808525 = 4.0;
double r808526 = /* ERROR: no complex support in C */;
double r808527 = r808526 * r808509;
double r808528 = r808524 + r808527;
double r808529 = 7.0;
double r808530 = /* ERROR: no complex support in C */;
double r808531 = r808528 + r808530;
double r808532 = /* ERROR: no complex support in C */;
return r808532;
}
double f() {
double r808533 = 5.5;
double r808534 = 3.0;
double r808535 = sqrt(r808534);
double r808536 = -r808535;
double r808537 = 2.0;
double r808538 = r808535 / r808537;
double r808539 = r808536 - r808538;
double r808540 = /* ERROR: no complex support in C */;
double r808541 = -0.5;
double r808542 = -2.0;
double r808543 = r808535 / r808542;
double r808544 = /* ERROR: no complex support in C */;
double r808545 = r808540 * r808544;
double r808546 = 5.0;
double r808547 = r808535 * r808537;
double r808548 = /* ERROR: no complex support in C */;
double r808549 = r808545 + r808548;
double r808550 = /* ERROR: no complex support in C */;
return r808550;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019144
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))