\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(\left(\left(\frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) + \frac{1}{4}\right) + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) + \left(6 + -2 \cdot \frac{\sqrt{3}}{2} i\right)\right) \cdot \left(\left(\frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) + \frac{1}{4}\right) + \left(\frac{\sqrt{3}}{-4} + \frac{\sqrt{3}}{-4}\right) i\right) + \left(5 + \frac{\sqrt{3} \cdot 4}{2} i\right)\right))double f() {
double r1129780 = 1.0;
double r1129781 = -r1129780;
double r1129782 = 2.0;
double r1129783 = r1129781 / r1129782;
double r1129784 = 3.0;
double r1129785 = sqrt(r1129784);
double r1129786 = r1129785 / r1129782;
double r1129787 = /* ERROR: no complex support in C */;
double r1129788 = r1129787 * r1129787;
double r1129789 = r1129788 * r1129787;
double r1129790 = r1129789 * r1129787;
double r1129791 = -r1129782;
double r1129792 = 0.0;
double r1129793 = /* ERROR: no complex support in C */;
double r1129794 = r1129793 * r1129787;
double r1129795 = r1129794 * r1129787;
double r1129796 = r1129795 * r1129787;
double r1129797 = r1129790 + r1129796;
double r1129798 = 5.0;
double r1129799 = /* ERROR: no complex support in C */;
double r1129800 = r1129799 * r1129787;
double r1129801 = r1129800 * r1129787;
double r1129802 = r1129797 + r1129801;
double r1129803 = 4.0;
double r1129804 = /* ERROR: no complex support in C */;
double r1129805 = r1129804 * r1129787;
double r1129806 = r1129802 + r1129805;
double r1129807 = 7.0;
double r1129808 = /* ERROR: no complex support in C */;
double r1129809 = r1129806 + r1129808;
double r1129810 = /* ERROR: no complex support in C */;
return r1129810;
}
double f() {
double r1129811 = 3.0;
double r1129812 = sqrt(r1129811);
double r1129813 = 2.0;
double r1129814 = r1129812 / r1129813;
double r1129815 = -4.0;
double r1129816 = r1129812 / r1129815;
double r1129817 = r1129816 + r1129816;
double r1129818 = r1129814 * r1129817;
double r1129819 = 0.25;
double r1129820 = r1129818 + r1129819;
double r1129821 = /* ERROR: no complex support in C */;
double r1129822 = 6.0;
double r1129823 = -2.0;
double r1129824 = r1129823 * r1129814;
double r1129825 = /* ERROR: no complex support in C */;
double r1129826 = r1129821 + r1129825;
double r1129827 = r1129826 * r1129821;
double r1129828 = 5.0;
double r1129829 = 4.0;
double r1129830 = r1129812 * r1129829;
double r1129831 = r1129830 / r1129813;
double r1129832 = /* ERROR: no complex support in C */;
double r1129833 = r1129827 + r1129832;
double r1129834 = /* ERROR: no complex support in C */;
return r1129834;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019154 +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))))