\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 r26674 = 1.0;
double r26675 = -r26674;
double r26676 = 2.0;
double r26677 = r26675 / r26676;
double r26678 = 3.0;
double r26679 = sqrt(r26678);
double r26680 = r26679 / r26676;
double r26681 = /* ERROR: no complex support in C */;
double r26682 = r26681 * r26681;
double r26683 = r26682 * r26681;
double r26684 = r26683 * r26681;
double r26685 = -r26676;
double r26686 = 0.0;
double r26687 = /* ERROR: no complex support in C */;
double r26688 = r26687 * r26681;
double r26689 = r26688 * r26681;
double r26690 = r26689 * r26681;
double r26691 = r26684 + r26690;
double r26692 = 5.0;
double r26693 = /* ERROR: no complex support in C */;
double r26694 = r26693 * r26681;
double r26695 = r26694 * r26681;
double r26696 = r26691 + r26695;
double r26697 = 4.0;
double r26698 = /* ERROR: no complex support in C */;
double r26699 = r26698 * r26681;
double r26700 = r26696 + r26699;
double r26701 = 7.0;
double r26702 = /* ERROR: no complex support in C */;
double r26703 = r26700 + r26702;
double r26704 = /* ERROR: no complex support in C */;
return r26704;
}
double f() {
double r26705 = 1.0;
double r26706 = -r26705;
double r26707 = 2.0;
double r26708 = r26706 / r26707;
double r26709 = 3.0;
double r26710 = sqrt(r26709);
double r26711 = r26710 / r26707;
double r26712 = /* ERROR: no complex support in C */;
double r26713 = r26712 * r26712;
double r26714 = r26713 * r26712;
double r26715 = r26714 * r26712;
double r26716 = -r26707;
double r26717 = 0.0;
double r26718 = /* ERROR: no complex support in C */;
double r26719 = r26718 * r26712;
double r26720 = r26719 * r26712;
double r26721 = r26720 * r26712;
double r26722 = r26715 + r26721;
double r26723 = 5.0;
double r26724 = /* ERROR: no complex support in C */;
double r26725 = r26724 * r26712;
double r26726 = r26725 * r26712;
double r26727 = r26722 + r26726;
double r26728 = 4.0;
double r26729 = /* ERROR: no complex support in C */;
double r26730 = r26729 * r26712;
double r26731 = r26727 + r26730;
double r26732 = 7.0;
double r26733 = /* ERROR: no complex support in C */;
double r26734 = r26731 + r26733;
double r26735 = /* ERROR: no complex support in C */;
return r26735;
}
Initial program 0
Final simplification0
herbie shell --seed 2019354 +o rules:numerics
(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))))