\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{-1}{2} + \frac{-\sqrt{3}}{2} i\right) \cdot \left(\left(\frac{-1}{2} + \frac{-\sqrt{3}}{2} i\right) + \left(6 + \frac{\sqrt{3}}{-1} i\right)\right) + \left(5 + \frac{\sqrt{3}}{\frac{1}{2}} i\right)\right))double f() {
double r1246499 = 1.0;
double r1246500 = -r1246499;
double r1246501 = 2.0;
double r1246502 = r1246500 / r1246501;
double r1246503 = 3.0;
double r1246504 = sqrt(r1246503);
double r1246505 = r1246504 / r1246501;
double r1246506 = /* ERROR: no complex support in C */;
double r1246507 = r1246506 * r1246506;
double r1246508 = r1246507 * r1246506;
double r1246509 = r1246508 * r1246506;
double r1246510 = -r1246501;
double r1246511 = 0.0;
double r1246512 = /* ERROR: no complex support in C */;
double r1246513 = r1246512 * r1246506;
double r1246514 = r1246513 * r1246506;
double r1246515 = r1246514 * r1246506;
double r1246516 = r1246509 + r1246515;
double r1246517 = 5.0;
double r1246518 = /* ERROR: no complex support in C */;
double r1246519 = r1246518 * r1246506;
double r1246520 = r1246519 * r1246506;
double r1246521 = r1246516 + r1246520;
double r1246522 = 4.0;
double r1246523 = /* ERROR: no complex support in C */;
double r1246524 = r1246523 * r1246506;
double r1246525 = r1246521 + r1246524;
double r1246526 = 7.0;
double r1246527 = /* ERROR: no complex support in C */;
double r1246528 = r1246525 + r1246527;
double r1246529 = /* ERROR: no complex support in C */;
return r1246529;
}
double f() {
double r1246530 = -0.5;
double r1246531 = 3.0;
double r1246532 = sqrt(r1246531);
double r1246533 = -r1246532;
double r1246534 = 2.0;
double r1246535 = r1246533 / r1246534;
double r1246536 = /* ERROR: no complex support in C */;
double r1246537 = 6.0;
double r1246538 = -1.0;
double r1246539 = r1246532 / r1246538;
double r1246540 = /* ERROR: no complex support in C */;
double r1246541 = r1246536 + r1246540;
double r1246542 = r1246536 * r1246541;
double r1246543 = 5.0;
double r1246544 = 0.5;
double r1246545 = r1246532 / r1246544;
double r1246546 = /* ERROR: no complex support in C */;
double r1246547 = r1246542 + r1246546;
double r1246548 = /* ERROR: no complex support in C */;
return r1246548;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019162 +o rules:numerics
(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))))