\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 r3650684 = 1.0;
double r3650685 = -r3650684;
double r3650686 = 2.0;
double r3650687 = r3650685 / r3650686;
double r3650688 = 3.0;
double r3650689 = sqrt(r3650688);
double r3650690 = r3650689 / r3650686;
double r3650691 = /* ERROR: no complex support in C */;
double r3650692 = r3650691 * r3650691;
double r3650693 = r3650692 * r3650691;
double r3650694 = r3650693 * r3650691;
double r3650695 = -r3650686;
double r3650696 = 0.0;
double r3650697 = /* ERROR: no complex support in C */;
double r3650698 = r3650697 * r3650691;
double r3650699 = r3650698 * r3650691;
double r3650700 = r3650699 * r3650691;
double r3650701 = r3650694 + r3650700;
double r3650702 = 5.0;
double r3650703 = /* ERROR: no complex support in C */;
double r3650704 = r3650703 * r3650691;
double r3650705 = r3650704 * r3650691;
double r3650706 = r3650701 + r3650705;
double r3650707 = 4.0;
double r3650708 = /* ERROR: no complex support in C */;
double r3650709 = r3650708 * r3650691;
double r3650710 = r3650706 + r3650709;
double r3650711 = 7.0;
double r3650712 = /* ERROR: no complex support in C */;
double r3650713 = r3650710 + r3650712;
double r3650714 = /* ERROR: no complex support in C */;
return r3650714;
}
double f() {
double r3650715 = 1.0;
double r3650716 = -r3650715;
double r3650717 = 2.0;
double r3650718 = r3650716 / r3650717;
double r3650719 = 3.0;
double r3650720 = sqrt(r3650719);
double r3650721 = r3650720 / r3650717;
double r3650722 = /* ERROR: no complex support in C */;
double r3650723 = r3650722 * r3650722;
double r3650724 = r3650723 * r3650722;
double r3650725 = r3650724 * r3650722;
double r3650726 = -r3650717;
double r3650727 = 0.0;
double r3650728 = /* ERROR: no complex support in C */;
double r3650729 = r3650728 * r3650722;
double r3650730 = r3650729 * r3650722;
double r3650731 = r3650730 * r3650722;
double r3650732 = r3650725 + r3650731;
double r3650733 = 5.0;
double r3650734 = /* ERROR: no complex support in C */;
double r3650735 = r3650734 * r3650722;
double r3650736 = r3650735 * r3650722;
double r3650737 = r3650732 + r3650736;
double r3650738 = 4.0;
double r3650739 = /* ERROR: no complex support in C */;
double r3650740 = r3650739 * r3650722;
double r3650741 = r3650737 + r3650740;
double r3650742 = 7.0;
double r3650743 = /* ERROR: no complex support in C */;
double r3650744 = r3650741 + r3650743;
double r3650745 = /* ERROR: no complex support in C */;
return r3650745;
}
Initial program 0
Final simplification0
herbie shell --seed 2019174
(FPCore ()
:name "3.9.2 imaginary part (p56)"
(im (+ (+ (+ (+ (* (* (* (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (* (* (* (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (* (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))