\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 r10433 = 1.0;
double r10434 = -r10433;
double r10435 = 2.0;
double r10436 = r10434 / r10435;
double r10437 = 3.0;
double r10438 = sqrt(r10437);
double r10439 = r10438 / r10435;
double r10440 = /* ERROR: no complex support in C */;
double r10441 = r10440 * r10440;
double r10442 = r10441 * r10440;
double r10443 = r10442 * r10440;
double r10444 = -r10435;
double r10445 = 0.0;
double r10446 = /* ERROR: no complex support in C */;
double r10447 = r10446 * r10440;
double r10448 = r10447 * r10440;
double r10449 = r10448 * r10440;
double r10450 = r10443 + r10449;
double r10451 = 5.0;
double r10452 = /* ERROR: no complex support in C */;
double r10453 = r10452 * r10440;
double r10454 = r10453 * r10440;
double r10455 = r10450 + r10454;
double r10456 = 4.0;
double r10457 = /* ERROR: no complex support in C */;
double r10458 = r10457 * r10440;
double r10459 = r10455 + r10458;
double r10460 = 7.0;
double r10461 = /* ERROR: no complex support in C */;
double r10462 = r10459 + r10461;
double r10463 = /* ERROR: no complex support in C */;
return r10463;
}
double f() {
double r10464 = 1.0;
double r10465 = -r10464;
double r10466 = 2.0;
double r10467 = r10465 / r10466;
double r10468 = 3.0;
double r10469 = sqrt(r10468);
double r10470 = r10469 / r10466;
double r10471 = /* ERROR: no complex support in C */;
double r10472 = r10471 * r10471;
double r10473 = r10472 * r10471;
double r10474 = r10473 * r10471;
double r10475 = -r10466;
double r10476 = 0.0;
double r10477 = /* ERROR: no complex support in C */;
double r10478 = r10477 * r10471;
double r10479 = r10478 * r10471;
double r10480 = r10479 * r10471;
double r10481 = r10474 + r10480;
double r10482 = 5.0;
double r10483 = /* ERROR: no complex support in C */;
double r10484 = r10483 * r10471;
double r10485 = r10484 * r10471;
double r10486 = r10481 + r10485;
double r10487 = 4.0;
double r10488 = /* ERROR: no complex support in C */;
double r10489 = r10488 * r10471;
double r10490 = r10486 + r10489;
double r10491 = 7.0;
double r10492 = /* ERROR: no complex support in C */;
double r10493 = r10490 + r10492;
double r10494 = /* ERROR: no complex support in C */;
return r10494;
}
Initial program 0
Final simplification0
herbie shell --seed 2019298
(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))))