\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 r21341 = 1.0;
double r21342 = -r21341;
double r21343 = 2.0;
double r21344 = r21342 / r21343;
double r21345 = 3.0;
double r21346 = sqrt(r21345);
double r21347 = r21346 / r21343;
double r21348 = /* ERROR: no complex support in C */;
double r21349 = r21348 * r21348;
double r21350 = r21349 * r21348;
double r21351 = r21350 * r21348;
double r21352 = -r21343;
double r21353 = 0.0;
double r21354 = /* ERROR: no complex support in C */;
double r21355 = r21354 * r21348;
double r21356 = r21355 * r21348;
double r21357 = r21356 * r21348;
double r21358 = r21351 + r21357;
double r21359 = 5.0;
double r21360 = /* ERROR: no complex support in C */;
double r21361 = r21360 * r21348;
double r21362 = r21361 * r21348;
double r21363 = r21358 + r21362;
double r21364 = 4.0;
double r21365 = /* ERROR: no complex support in C */;
double r21366 = r21365 * r21348;
double r21367 = r21363 + r21366;
double r21368 = 7.0;
double r21369 = /* ERROR: no complex support in C */;
double r21370 = r21367 + r21369;
double r21371 = /* ERROR: no complex support in C */;
return r21371;
}
double f() {
double r21372 = 1.0;
double r21373 = -r21372;
double r21374 = 2.0;
double r21375 = r21373 / r21374;
double r21376 = 3.0;
double r21377 = sqrt(r21376);
double r21378 = r21377 / r21374;
double r21379 = /* ERROR: no complex support in C */;
double r21380 = r21379 * r21379;
double r21381 = r21380 * r21379;
double r21382 = r21381 * r21379;
double r21383 = -r21374;
double r21384 = 0.0;
double r21385 = /* ERROR: no complex support in C */;
double r21386 = r21385 * r21379;
double r21387 = r21386 * r21379;
double r21388 = r21387 * r21379;
double r21389 = r21382 + r21388;
double r21390 = 5.0;
double r21391 = /* ERROR: no complex support in C */;
double r21392 = r21391 * r21379;
double r21393 = r21392 * r21379;
double r21394 = r21389 + r21393;
double r21395 = 4.0;
double r21396 = /* ERROR: no complex support in C */;
double r21397 = r21396 * r21379;
double r21398 = r21394 + r21397;
double r21399 = 7.0;
double r21400 = /* ERROR: no complex support in C */;
double r21401 = r21398 + r21400;
double r21402 = /* ERROR: no complex support in C */;
return r21402;
}
Initial program 0
Final simplification0
herbie shell --seed 2019303
(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))))