\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(\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)\right) + \left(\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(\left(-2\right) + 0.0 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\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(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(4 + 0.0 i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r10382 = 1.0;
double r10383 = -r10382;
double r10384 = 2.0;
double r10385 = r10383 / r10384;
double r10386 = 3.0;
double r10387 = sqrt(r10386);
double r10388 = r10387 / r10384;
double r10389 = /* ERROR: no complex support in C */;
double r10390 = r10389 * r10389;
double r10391 = r10390 * r10389;
double r10392 = r10391 * r10389;
double r10393 = -r10384;
double r10394 = 0.0;
double r10395 = /* ERROR: no complex support in C */;
double r10396 = r10395 * r10389;
double r10397 = r10396 * r10389;
double r10398 = r10397 * r10389;
double r10399 = r10392 + r10398;
double r10400 = 5.0;
double r10401 = /* ERROR: no complex support in C */;
double r10402 = r10401 * r10389;
double r10403 = r10402 * r10389;
double r10404 = r10399 + r10403;
double r10405 = 4.0;
double r10406 = /* ERROR: no complex support in C */;
double r10407 = r10406 * r10389;
double r10408 = r10404 + r10407;
double r10409 = 7.0;
double r10410 = /* ERROR: no complex support in C */;
double r10411 = r10408 + r10410;
double r10412 = /* ERROR: no complex support in C */;
return r10412;
}
double f() {
double r10413 = 1.0;
double r10414 = -r10413;
double r10415 = 2.0;
double r10416 = r10414 / r10415;
double r10417 = 3.0;
double r10418 = sqrt(r10417);
double r10419 = r10418 / r10415;
double r10420 = /* ERROR: no complex support in C */;
double r10421 = r10420 * r10420;
double r10422 = r10421 * r10420;
double r10423 = r10420 * r10422;
double r10424 = -r10415;
double r10425 = 0.0;
double r10426 = /* ERROR: no complex support in C */;
double r10427 = r10426 * r10420;
double r10428 = r10420 * r10427;
double r10429 = r10420 * r10428;
double r10430 = r10423 + r10429;
double r10431 = 5.0;
double r10432 = /* ERROR: no complex support in C */;
double r10433 = r10432 * r10420;
double r10434 = r10433 * r10420;
double r10435 = r10430 + r10434;
double r10436 = 4.0;
double r10437 = /* ERROR: no complex support in C */;
double r10438 = r10420 * r10437;
double r10439 = r10435 + r10438;
double r10440 = 7.0;
double r10441 = /* ERROR: no complex support in C */;
double r10442 = r10439 + r10441;
double r10443 = /* ERROR: no complex support in C */;
return r10443;
}
Initial program 0
Final simplification0
herbie shell --seed 2019194 +o rules:numerics
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+ (+ (+ (+ (* (* (* (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (* (* (* (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (* (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))