\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(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(-2 + 0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right)\right) + \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) + \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(4 + 0 i\right)\right) + \left(7 + 0 i\right)\right))double f() {
double r733066 = 1.0;
double r733067 = -r733066;
double r733068 = 2.0;
double r733069 = r733067 / r733068;
double r733070 = 3.0;
double r733071 = sqrt(r733070);
double r733072 = r733071 / r733068;
double r733073 = /* ERROR: no complex support in C */;
double r733074 = r733073 * r733073;
double r733075 = r733074 * r733073;
double r733076 = r733075 * r733073;
double r733077 = -r733068;
double r733078 = 0.0;
double r733079 = /* ERROR: no complex support in C */;
double r733080 = r733079 * r733073;
double r733081 = r733080 * r733073;
double r733082 = r733081 * r733073;
double r733083 = r733076 + r733082;
double r733084 = 5.0;
double r733085 = /* ERROR: no complex support in C */;
double r733086 = r733085 * r733073;
double r733087 = r733086 * r733073;
double r733088 = r733083 + r733087;
double r733089 = 4.0;
double r733090 = /* ERROR: no complex support in C */;
double r733091 = r733090 * r733073;
double r733092 = r733088 + r733091;
double r733093 = 7.0;
double r733094 = /* ERROR: no complex support in C */;
double r733095 = r733092 + r733094;
double r733096 = /* ERROR: no complex support in C */;
return r733096;
}
double f() {
double r733097 = -0.5;
double r733098 = 3.0;
double r733099 = sqrt(r733098);
double r733100 = 2.0;
double r733101 = r733099 / r733100;
double r733102 = /* ERROR: no complex support in C */;
double r733103 = r733102 * r733102;
double r733104 = r733103 * r733102;
double r733105 = r733102 * r733104;
double r733106 = -2.0;
double r733107 = 0.0;
double r733108 = /* ERROR: no complex support in C */;
double r733109 = r733108 * r733102;
double r733110 = r733102 * r733109;
double r733111 = r733102 * r733110;
double r733112 = r733105 + r733111;
double r733113 = 5.0;
double r733114 = /* ERROR: no complex support in C */;
double r733115 = r733114 * r733102;
double r733116 = r733115 * r733102;
double r733117 = r733112 + r733116;
double r733118 = 4.0;
double r733119 = /* ERROR: no complex support in C */;
double r733120 = r733102 * r733119;
double r733121 = r733117 + r733120;
double r733122 = 7.0;
double r733123 = /* ERROR: no complex support in C */;
double r733124 = r733121 + r733123;
double r733125 = /* ERROR: no complex support in C */;
return r733125;
}
Initial program 0
Final simplification0
herbie shell --seed 2019119
(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))))