\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 r1143507 = 1.0;
double r1143508 = -r1143507;
double r1143509 = 2.0;
double r1143510 = r1143508 / r1143509;
double r1143511 = 3.0;
double r1143512 = sqrt(r1143511);
double r1143513 = r1143512 / r1143509;
double r1143514 = /* ERROR: no complex support in C */;
double r1143515 = r1143514 * r1143514;
double r1143516 = r1143515 * r1143514;
double r1143517 = r1143516 * r1143514;
double r1143518 = -r1143509;
double r1143519 = 0.0;
double r1143520 = /* ERROR: no complex support in C */;
double r1143521 = r1143520 * r1143514;
double r1143522 = r1143521 * r1143514;
double r1143523 = r1143522 * r1143514;
double r1143524 = r1143517 + r1143523;
double r1143525 = 5.0;
double r1143526 = /* ERROR: no complex support in C */;
double r1143527 = r1143526 * r1143514;
double r1143528 = r1143527 * r1143514;
double r1143529 = r1143524 + r1143528;
double r1143530 = 4.0;
double r1143531 = /* ERROR: no complex support in C */;
double r1143532 = r1143531 * r1143514;
double r1143533 = r1143529 + r1143532;
double r1143534 = 7.0;
double r1143535 = /* ERROR: no complex support in C */;
double r1143536 = r1143533 + r1143535;
double r1143537 = /* ERROR: no complex support in C */;
return r1143537;
}
double f() {
double r1143538 = -0.5;
double r1143539 = 3.0;
double r1143540 = sqrt(r1143539);
double r1143541 = -r1143540;
double r1143542 = 2.0;
double r1143543 = r1143541 / r1143542;
double r1143544 = /* ERROR: no complex support in C */;
double r1143545 = 6.0;
double r1143546 = -1.0;
double r1143547 = r1143540 / r1143546;
double r1143548 = /* ERROR: no complex support in C */;
double r1143549 = r1143544 + r1143548;
double r1143550 = r1143544 * r1143549;
double r1143551 = 5.0;
double r1143552 = 0.5;
double r1143553 = r1143540 / r1143552;
double r1143554 = /* ERROR: no complex support in C */;
double r1143555 = r1143550 + r1143554;
double r1143556 = /* ERROR: no complex support in C */;
return r1143556;
}
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))))