\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(5 + \frac{\sqrt{3}}{2} \cdot 4 i\right) + \left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{-\sqrt{3}}{2} i\right) \cdot \left(\left(6 + \frac{-2 \cdot \sqrt{3}}{2} i\right) + \left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{-\sqrt{3}}{2} i\right)\right)\right))double f() {
double r2514265 = 1.0;
double r2514266 = -r2514265;
double r2514267 = 2.0;
double r2514268 = r2514266 / r2514267;
double r2514269 = 3.0;
double r2514270 = sqrt(r2514269);
double r2514271 = r2514270 / r2514267;
double r2514272 = /* ERROR: no complex support in C */;
double r2514273 = r2514272 * r2514272;
double r2514274 = r2514273 * r2514272;
double r2514275 = r2514274 * r2514272;
double r2514276 = -r2514267;
double r2514277 = 0.0;
double r2514278 = /* ERROR: no complex support in C */;
double r2514279 = r2514278 * r2514272;
double r2514280 = r2514279 * r2514272;
double r2514281 = r2514280 * r2514272;
double r2514282 = r2514275 + r2514281;
double r2514283 = 5.0;
double r2514284 = /* ERROR: no complex support in C */;
double r2514285 = r2514284 * r2514272;
double r2514286 = r2514285 * r2514272;
double r2514287 = r2514282 + r2514286;
double r2514288 = 4.0;
double r2514289 = /* ERROR: no complex support in C */;
double r2514290 = r2514289 * r2514272;
double r2514291 = r2514287 + r2514290;
double r2514292 = 7.0;
double r2514293 = /* ERROR: no complex support in C */;
double r2514294 = r2514291 + r2514293;
double r2514295 = /* ERROR: no complex support in C */;
return r2514295;
}
double f() {
double r2514296 = 5.0;
double r2514297 = 3.0;
double r2514298 = sqrt(r2514297);
double r2514299 = 2.0;
double r2514300 = r2514298 / r2514299;
double r2514301 = 4.0;
double r2514302 = r2514300 * r2514301;
double r2514303 = /* ERROR: no complex support in C */;
double r2514304 = 0.25;
double r2514305 = r2514300 * r2514300;
double r2514306 = r2514304 - r2514305;
double r2514307 = -r2514298;
double r2514308 = r2514307 / r2514299;
double r2514309 = /* ERROR: no complex support in C */;
double r2514310 = 6.0;
double r2514311 = -2.0;
double r2514312 = r2514311 * r2514298;
double r2514313 = r2514312 / r2514299;
double r2514314 = /* ERROR: no complex support in C */;
double r2514315 = r2514314 + r2514309;
double r2514316 = r2514309 * r2514315;
double r2514317 = r2514303 + r2514316;
double r2514318 = /* ERROR: no complex support in C */;
return r2514318;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019112 +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))))