\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 r31264 = 1.0;
double r31265 = -r31264;
double r31266 = 2.0;
double r31267 = r31265 / r31266;
double r31268 = 3.0;
double r31269 = sqrt(r31268);
double r31270 = r31269 / r31266;
double r31271 = /* ERROR: no complex support in C */;
double r31272 = r31271 * r31271;
double r31273 = r31272 * r31271;
double r31274 = r31273 * r31271;
double r31275 = -r31266;
double r31276 = 0.0;
double r31277 = /* ERROR: no complex support in C */;
double r31278 = r31277 * r31271;
double r31279 = r31278 * r31271;
double r31280 = r31279 * r31271;
double r31281 = r31274 + r31280;
double r31282 = 5.0;
double r31283 = /* ERROR: no complex support in C */;
double r31284 = r31283 * r31271;
double r31285 = r31284 * r31271;
double r31286 = r31281 + r31285;
double r31287 = 4.0;
double r31288 = /* ERROR: no complex support in C */;
double r31289 = r31288 * r31271;
double r31290 = r31286 + r31289;
double r31291 = 7.0;
double r31292 = /* ERROR: no complex support in C */;
double r31293 = r31290 + r31292;
double r31294 = /* ERROR: no complex support in C */;
return r31294;
}
double f() {
double r31295 = 1.0;
double r31296 = -r31295;
double r31297 = 2.0;
double r31298 = r31296 / r31297;
double r31299 = 3.0;
double r31300 = sqrt(r31299);
double r31301 = r31300 / r31297;
double r31302 = /* ERROR: no complex support in C */;
double r31303 = r31302 * r31302;
double r31304 = r31303 * r31302;
double r31305 = r31304 * r31302;
double r31306 = -r31297;
double r31307 = 0.0;
double r31308 = /* ERROR: no complex support in C */;
double r31309 = r31308 * r31302;
double r31310 = r31309 * r31302;
double r31311 = r31310 * r31302;
double r31312 = r31305 + r31311;
double r31313 = 5.0;
double r31314 = /* ERROR: no complex support in C */;
double r31315 = r31314 * r31302;
double r31316 = r31315 * r31302;
double r31317 = r31312 + r31316;
double r31318 = 4.0;
double r31319 = /* ERROR: no complex support in C */;
double r31320 = r31319 * r31302;
double r31321 = r31317 + r31320;
double r31322 = 7.0;
double r31323 = /* ERROR: no complex support in C */;
double r31324 = r31321 + r31323;
double r31325 = /* ERROR: no complex support in C */;
return r31325;
}
Initial program 0
Final simplification0
herbie shell --seed 2019304
(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))))