\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 r10456 = 1.0;
double r10457 = -r10456;
double r10458 = 2.0;
double r10459 = r10457 / r10458;
double r10460 = 3.0;
double r10461 = sqrt(r10460);
double r10462 = r10461 / r10458;
double r10463 = /* ERROR: no complex support in C */;
double r10464 = r10463 * r10463;
double r10465 = r10464 * r10463;
double r10466 = r10465 * r10463;
double r10467 = -r10458;
double r10468 = 0.0;
double r10469 = /* ERROR: no complex support in C */;
double r10470 = r10469 * r10463;
double r10471 = r10470 * r10463;
double r10472 = r10471 * r10463;
double r10473 = r10466 + r10472;
double r10474 = 5.0;
double r10475 = /* ERROR: no complex support in C */;
double r10476 = r10475 * r10463;
double r10477 = r10476 * r10463;
double r10478 = r10473 + r10477;
double r10479 = 4.0;
double r10480 = /* ERROR: no complex support in C */;
double r10481 = r10480 * r10463;
double r10482 = r10478 + r10481;
double r10483 = 7.0;
double r10484 = /* ERROR: no complex support in C */;
double r10485 = r10482 + r10484;
double r10486 = /* ERROR: no complex support in C */;
return r10486;
}
double f() {
double r10487 = 1.0;
double r10488 = -r10487;
double r10489 = 2.0;
double r10490 = r10488 / r10489;
double r10491 = 3.0;
double r10492 = sqrt(r10491);
double r10493 = r10492 / r10489;
double r10494 = /* ERROR: no complex support in C */;
double r10495 = r10494 * r10494;
double r10496 = r10495 * r10494;
double r10497 = r10496 * r10494;
double r10498 = -r10489;
double r10499 = 0.0;
double r10500 = /* ERROR: no complex support in C */;
double r10501 = r10500 * r10494;
double r10502 = r10501 * r10494;
double r10503 = r10502 * r10494;
double r10504 = r10497 + r10503;
double r10505 = 5.0;
double r10506 = /* ERROR: no complex support in C */;
double r10507 = r10506 * r10494;
double r10508 = r10507 * r10494;
double r10509 = r10504 + r10508;
double r10510 = 4.0;
double r10511 = /* ERROR: no complex support in C */;
double r10512 = r10511 * r10494;
double r10513 = r10509 + r10512;
double r10514 = 7.0;
double r10515 = /* ERROR: no complex support in C */;
double r10516 = r10513 + r10515;
double r10517 = /* ERROR: no complex support in C */;
return r10517;
}
Initial program 0
Final simplification0
herbie shell --seed 2019291
(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))))