\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 r157 = 1.0;
double r158 = -r157;
double r159 = 2.0;
double r160 = r158 / r159;
double r161 = 3.0;
double r162 = sqrt(r161);
double r163 = r162 / r159;
double r164 = /* ERROR: no complex support in C */;
double r165 = r164 * r164;
double r166 = r165 * r164;
double r167 = r166 * r164;
double r168 = -r159;
double r169 = 0.0;
double r170 = /* ERROR: no complex support in C */;
double r171 = r170 * r164;
double r172 = r171 * r164;
double r173 = r172 * r164;
double r174 = r167 + r173;
double r175 = 5.0;
double r176 = /* ERROR: no complex support in C */;
double r177 = r176 * r164;
double r178 = r177 * r164;
double r179 = r174 + r178;
double r180 = 4.0;
double r181 = /* ERROR: no complex support in C */;
double r182 = r181 * r164;
double r183 = r179 + r182;
double r184 = 7.0;
double r185 = /* ERROR: no complex support in C */;
double r186 = r183 + r185;
double r187 = /* ERROR: no complex support in C */;
return r187;
}
double f() {
double r188 = 1.0;
double r189 = -r188;
double r190 = 2.0;
double r191 = r189 / r190;
double r192 = 3.0;
double r193 = sqrt(r192);
double r194 = r193 / r190;
double r195 = /* ERROR: no complex support in C */;
double r196 = r195 * r195;
double r197 = r196 * r195;
double r198 = r197 * r195;
double r199 = -r190;
double r200 = 0.0;
double r201 = /* ERROR: no complex support in C */;
double r202 = r201 * r195;
double r203 = r202 * r195;
double r204 = r203 * r195;
double r205 = r198 + r204;
double r206 = 5.0;
double r207 = /* ERROR: no complex support in C */;
double r208 = r207 * r195;
double r209 = r208 * r195;
double r210 = r205 + r209;
double r211 = 4.0;
double r212 = /* ERROR: no complex support in C */;
double r213 = r212 * r195;
double r214 = r210 + r213;
double r215 = 7.0;
double r216 = /* ERROR: no complex support in C */;
double r217 = r214 + r216;
double r218 = /* ERROR: no complex support in C */;
return r218;
}
Initial program 0
Final simplification0
herbie shell --seed 2020025 +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))))