\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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\Im(\left(\left(5 + \frac{\sqrt{3}}{2} \cdot 4 i\right) + \left(\left(\left(\left(-\frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{1}{4}\right) + \frac{-\sqrt{3}}{2} i\right) + \left(6 + \frac{\sqrt{3}}{-1} i\right)\right) \cdot \left(\left(\left(-\frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{1}{4}\right) + \frac{-\sqrt{3}}{2} i\right)\right))double f() {
double r755648 = 1.0;
double r755649 = -r755648;
double r755650 = 2.0;
double r755651 = r755649 / r755650;
double r755652 = 3.0;
double r755653 = sqrt(r755652);
double r755654 = r755653 / r755650;
double r755655 = /* ERROR: no complex support in C */;
double r755656 = r755655 * r755655;
double r755657 = r755656 * r755655;
double r755658 = r755657 * r755655;
double r755659 = -r755650;
double r755660 = 0.0;
double r755661 = /* ERROR: no complex support in C */;
double r755662 = r755661 * r755655;
double r755663 = r755662 * r755655;
double r755664 = r755663 * r755655;
double r755665 = r755658 + r755664;
double r755666 = 5.0;
double r755667 = /* ERROR: no complex support in C */;
double r755668 = r755667 * r755655;
double r755669 = r755668 * r755655;
double r755670 = r755665 + r755669;
double r755671 = 4.0;
double r755672 = /* ERROR: no complex support in C */;
double r755673 = r755672 * r755655;
double r755674 = r755670 + r755673;
double r755675 = 7.0;
double r755676 = /* ERROR: no complex support in C */;
double r755677 = r755674 + r755676;
double r755678 = /* ERROR: no complex support in C */;
return r755678;
}
double f() {
double r755679 = 5.0;
double r755680 = 3.0;
double r755681 = sqrt(r755680);
double r755682 = 2.0;
double r755683 = r755681 / r755682;
double r755684 = 4.0;
double r755685 = r755683 * r755684;
double r755686 = /* ERROR: no complex support in C */;
double r755687 = r755683 * r755683;
double r755688 = -r755687;
double r755689 = 0.25;
double r755690 = r755688 + r755689;
double r755691 = -r755681;
double r755692 = r755691 / r755682;
double r755693 = /* ERROR: no complex support in C */;
double r755694 = 6.0;
double r755695 = -1.0;
double r755696 = r755681 / r755695;
double r755697 = /* ERROR: no complex support in C */;
double r755698 = r755693 + r755697;
double r755699 = r755698 * r755693;
double r755700 = r755686 + r755699;
double r755701 = /* ERROR: no complex support in C */;
return r755701;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019154
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))