\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(\frac{-1}{2} + \frac{-\sqrt{3}}{2} i\right) \cdot \left(\left(\frac{-1}{2} + \frac{-\sqrt{3}}{2} i\right) + \left(6 + \frac{\sqrt{3}}{-1} i\right)\right)\right) + \left(5 + \frac{\sqrt{3}}{\frac{1}{2}} i\right)\right))double f() {
double r1388307 = 1.0;
double r1388308 = -r1388307;
double r1388309 = 2.0;
double r1388310 = r1388308 / r1388309;
double r1388311 = 3.0;
double r1388312 = sqrt(r1388311);
double r1388313 = r1388312 / r1388309;
double r1388314 = /* ERROR: no complex support in C */;
double r1388315 = r1388314 * r1388314;
double r1388316 = r1388315 * r1388314;
double r1388317 = r1388316 * r1388314;
double r1388318 = -r1388309;
double r1388319 = 0.0;
double r1388320 = /* ERROR: no complex support in C */;
double r1388321 = r1388320 * r1388314;
double r1388322 = r1388321 * r1388314;
double r1388323 = r1388322 * r1388314;
double r1388324 = r1388317 + r1388323;
double r1388325 = 5.0;
double r1388326 = /* ERROR: no complex support in C */;
double r1388327 = r1388326 * r1388314;
double r1388328 = r1388327 * r1388314;
double r1388329 = r1388324 + r1388328;
double r1388330 = 4.0;
double r1388331 = /* ERROR: no complex support in C */;
double r1388332 = r1388331 * r1388314;
double r1388333 = r1388329 + r1388332;
double r1388334 = 7.0;
double r1388335 = /* ERROR: no complex support in C */;
double r1388336 = r1388333 + r1388335;
double r1388337 = /* ERROR: no complex support in C */;
return r1388337;
}
double f() {
double r1388338 = -0.5;
double r1388339 = 3.0;
double r1388340 = sqrt(r1388339);
double r1388341 = -r1388340;
double r1388342 = 2.0;
double r1388343 = r1388341 / r1388342;
double r1388344 = /* ERROR: no complex support in C */;
double r1388345 = 6.0;
double r1388346 = -1.0;
double r1388347 = r1388340 / r1388346;
double r1388348 = /* ERROR: no complex support in C */;
double r1388349 = r1388344 + r1388348;
double r1388350 = r1388344 * r1388349;
double r1388351 = 5.0;
double r1388352 = 0.5;
double r1388353 = r1388340 / r1388352;
double r1388354 = /* ERROR: no complex support in C */;
double r1388355 = r1388350 + r1388354;
double r1388356 = /* ERROR: no complex support in C */;
return r1388356;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019168 +o rules:numerics
(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))))