\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 r1201094 = 1.0;
double r1201095 = -r1201094;
double r1201096 = 2.0;
double r1201097 = r1201095 / r1201096;
double r1201098 = 3.0;
double r1201099 = sqrt(r1201098);
double r1201100 = r1201099 / r1201096;
double r1201101 = /* ERROR: no complex support in C */;
double r1201102 = r1201101 * r1201101;
double r1201103 = r1201102 * r1201101;
double r1201104 = r1201103 * r1201101;
double r1201105 = -r1201096;
double r1201106 = 0.0;
double r1201107 = /* ERROR: no complex support in C */;
double r1201108 = r1201107 * r1201101;
double r1201109 = r1201108 * r1201101;
double r1201110 = r1201109 * r1201101;
double r1201111 = r1201104 + r1201110;
double r1201112 = 5.0;
double r1201113 = /* ERROR: no complex support in C */;
double r1201114 = r1201113 * r1201101;
double r1201115 = r1201114 * r1201101;
double r1201116 = r1201111 + r1201115;
double r1201117 = 4.0;
double r1201118 = /* ERROR: no complex support in C */;
double r1201119 = r1201118 * r1201101;
double r1201120 = r1201116 + r1201119;
double r1201121 = 7.0;
double r1201122 = /* ERROR: no complex support in C */;
double r1201123 = r1201120 + r1201122;
double r1201124 = /* ERROR: no complex support in C */;
return r1201124;
}
double f() {
double r1201125 = -0.5;
double r1201126 = 3.0;
double r1201127 = sqrt(r1201126);
double r1201128 = 2.0;
double r1201129 = r1201127 / r1201128;
double r1201130 = /* ERROR: no complex support in C */;
double r1201131 = r1201130 * r1201130;
double r1201132 = r1201131 * r1201130;
double r1201133 = r1201130 * r1201132;
double r1201134 = -2.0;
double r1201135 = 0.0;
double r1201136 = /* ERROR: no complex support in C */;
double r1201137 = r1201136 * r1201130;
double r1201138 = r1201130 * r1201137;
double r1201139 = r1201130 * r1201138;
double r1201140 = r1201133 + r1201139;
double r1201141 = 5.0;
double r1201142 = /* ERROR: no complex support in C */;
double r1201143 = r1201142 * r1201130;
double r1201144 = r1201143 * r1201130;
double r1201145 = r1201140 + r1201144;
double r1201146 = 4.0;
double r1201147 = /* ERROR: no complex support in C */;
double r1201148 = r1201130 * r1201147;
double r1201149 = r1201145 + r1201148;
double r1201150 = 7.0;
double r1201151 = /* ERROR: no complex support in C */;
double r1201152 = r1201149 + r1201151;
double r1201153 = /* ERROR: no complex support in C */;
return r1201153;
}
Initial program 0
Final simplification0
herbie shell --seed 2019120
(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))))