\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 r10474 = 1.0;
double r10475 = -r10474;
double r10476 = 2.0;
double r10477 = r10475 / r10476;
double r10478 = 3.0;
double r10479 = sqrt(r10478);
double r10480 = r10479 / r10476;
double r10481 = /* ERROR: no complex support in C */;
double r10482 = r10481 * r10481;
double r10483 = r10482 * r10481;
double r10484 = r10483 * r10481;
double r10485 = -r10476;
double r10486 = 0.0;
double r10487 = /* ERROR: no complex support in C */;
double r10488 = r10487 * r10481;
double r10489 = r10488 * r10481;
double r10490 = r10489 * r10481;
double r10491 = r10484 + r10490;
double r10492 = 5.0;
double r10493 = /* ERROR: no complex support in C */;
double r10494 = r10493 * r10481;
double r10495 = r10494 * r10481;
double r10496 = r10491 + r10495;
double r10497 = 4.0;
double r10498 = /* ERROR: no complex support in C */;
double r10499 = r10498 * r10481;
double r10500 = r10496 + r10499;
double r10501 = 7.0;
double r10502 = /* ERROR: no complex support in C */;
double r10503 = r10500 + r10502;
double r10504 = /* ERROR: no complex support in C */;
return r10504;
}
double f() {
double r10505 = 1.0;
double r10506 = -r10505;
double r10507 = 2.0;
double r10508 = r10506 / r10507;
double r10509 = 3.0;
double r10510 = sqrt(r10509);
double r10511 = r10510 / r10507;
double r10512 = /* ERROR: no complex support in C */;
double r10513 = r10512 * r10512;
double r10514 = r10513 * r10512;
double r10515 = r10514 * r10512;
double r10516 = -r10507;
double r10517 = 0.0;
double r10518 = /* ERROR: no complex support in C */;
double r10519 = r10518 * r10512;
double r10520 = r10519 * r10512;
double r10521 = r10520 * r10512;
double r10522 = r10515 + r10521;
double r10523 = 5.0;
double r10524 = /* ERROR: no complex support in C */;
double r10525 = r10524 * r10512;
double r10526 = r10525 * r10512;
double r10527 = r10522 + r10526;
double r10528 = 4.0;
double r10529 = /* ERROR: no complex support in C */;
double r10530 = r10529 * r10512;
double r10531 = r10527 + r10530;
double r10532 = 7.0;
double r10533 = /* ERROR: no complex support in C */;
double r10534 = r10531 + r10533;
double r10535 = /* ERROR: no complex support in C */;
return r10535;
}
Initial program 0
Final simplification0
herbie shell --seed 2019323
(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))))