\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{11}{2} + \left(\left(-\sqrt{3}\right) - \frac{\sqrt{3}}{2}\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))double f() {
double r1200085 = 1.0;
double r1200086 = -r1200085;
double r1200087 = 2.0;
double r1200088 = r1200086 / r1200087;
double r1200089 = 3.0;
double r1200090 = sqrt(r1200089);
double r1200091 = r1200090 / r1200087;
double r1200092 = /* ERROR: no complex support in C */;
double r1200093 = r1200092 * r1200092;
double r1200094 = r1200093 * r1200092;
double r1200095 = r1200094 * r1200092;
double r1200096 = -r1200087;
double r1200097 = 0.0;
double r1200098 = /* ERROR: no complex support in C */;
double r1200099 = r1200098 * r1200092;
double r1200100 = r1200099 * r1200092;
double r1200101 = r1200100 * r1200092;
double r1200102 = r1200095 + r1200101;
double r1200103 = 5.0;
double r1200104 = /* ERROR: no complex support in C */;
double r1200105 = r1200104 * r1200092;
double r1200106 = r1200105 * r1200092;
double r1200107 = r1200102 + r1200106;
double r1200108 = 4.0;
double r1200109 = /* ERROR: no complex support in C */;
double r1200110 = r1200109 * r1200092;
double r1200111 = r1200107 + r1200110;
double r1200112 = 7.0;
double r1200113 = /* ERROR: no complex support in C */;
double r1200114 = r1200111 + r1200113;
double r1200115 = /* ERROR: no complex support in C */;
return r1200115;
}
double f() {
double r1200116 = 5.5;
double r1200117 = 3.0;
double r1200118 = sqrt(r1200117);
double r1200119 = -r1200118;
double r1200120 = 2.0;
double r1200121 = r1200118 / r1200120;
double r1200122 = r1200119 - r1200121;
double r1200123 = /* ERROR: no complex support in C */;
double r1200124 = -0.5;
double r1200125 = -2.0;
double r1200126 = r1200118 / r1200125;
double r1200127 = /* ERROR: no complex support in C */;
double r1200128 = r1200123 * r1200127;
double r1200129 = 5.0;
double r1200130 = r1200118 * r1200120;
double r1200131 = /* ERROR: no complex support in C */;
double r1200132 = r1200128 + r1200131;
double r1200133 = /* ERROR: no complex support in C */;
return r1200133;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019142
(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))))