\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 r15570 = 1.0;
double r15571 = -r15570;
double r15572 = 2.0;
double r15573 = r15571 / r15572;
double r15574 = 3.0;
double r15575 = sqrt(r15574);
double r15576 = r15575 / r15572;
double r15577 = /* ERROR: no complex support in C */;
double r15578 = r15577 * r15577;
double r15579 = r15578 * r15577;
double r15580 = r15579 * r15577;
double r15581 = -r15572;
double r15582 = 0.0;
double r15583 = /* ERROR: no complex support in C */;
double r15584 = r15583 * r15577;
double r15585 = r15584 * r15577;
double r15586 = r15585 * r15577;
double r15587 = r15580 + r15586;
double r15588 = 5.0;
double r15589 = /* ERROR: no complex support in C */;
double r15590 = r15589 * r15577;
double r15591 = r15590 * r15577;
double r15592 = r15587 + r15591;
double r15593 = 4.0;
double r15594 = /* ERROR: no complex support in C */;
double r15595 = r15594 * r15577;
double r15596 = r15592 + r15595;
double r15597 = 7.0;
double r15598 = /* ERROR: no complex support in C */;
double r15599 = r15596 + r15598;
double r15600 = /* ERROR: no complex support in C */;
return r15600;
}
double f() {
double r15601 = 1.0;
double r15602 = -r15601;
double r15603 = 2.0;
double r15604 = r15602 / r15603;
double r15605 = 3.0;
double r15606 = sqrt(r15605);
double r15607 = r15606 / r15603;
double r15608 = /* ERROR: no complex support in C */;
double r15609 = r15608 * r15608;
double r15610 = r15609 * r15608;
double r15611 = r15610 * r15608;
double r15612 = -r15603;
double r15613 = 0.0;
double r15614 = /* ERROR: no complex support in C */;
double r15615 = r15614 * r15608;
double r15616 = r15615 * r15608;
double r15617 = r15616 * r15608;
double r15618 = r15611 + r15617;
double r15619 = 5.0;
double r15620 = /* ERROR: no complex support in C */;
double r15621 = r15620 * r15608;
double r15622 = r15621 * r15608;
double r15623 = r15618 + r15622;
double r15624 = 4.0;
double r15625 = /* ERROR: no complex support in C */;
double r15626 = r15625 * r15608;
double r15627 = r15623 + r15626;
double r15628 = 7.0;
double r15629 = /* ERROR: no complex support in C */;
double r15630 = r15627 + r15629;
double r15631 = /* ERROR: no complex support in C */;
return r15631;
}
Initial program 0
Final simplification0
herbie shell --seed 2020045
(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))))