\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 r26799 = 1.0;
double r26800 = -r26799;
double r26801 = 2.0;
double r26802 = r26800 / r26801;
double r26803 = 3.0;
double r26804 = sqrt(r26803);
double r26805 = r26804 / r26801;
double r26806 = /* ERROR: no complex support in C */;
double r26807 = r26806 * r26806;
double r26808 = r26807 * r26806;
double r26809 = r26808 * r26806;
double r26810 = -r26801;
double r26811 = 0.0;
double r26812 = /* ERROR: no complex support in C */;
double r26813 = r26812 * r26806;
double r26814 = r26813 * r26806;
double r26815 = r26814 * r26806;
double r26816 = r26809 + r26815;
double r26817 = 5.0;
double r26818 = /* ERROR: no complex support in C */;
double r26819 = r26818 * r26806;
double r26820 = r26819 * r26806;
double r26821 = r26816 + r26820;
double r26822 = 4.0;
double r26823 = /* ERROR: no complex support in C */;
double r26824 = r26823 * r26806;
double r26825 = r26821 + r26824;
double r26826 = 7.0;
double r26827 = /* ERROR: no complex support in C */;
double r26828 = r26825 + r26827;
double r26829 = /* ERROR: no complex support in C */;
return r26829;
}
double f() {
double r26830 = 1.0;
double r26831 = -r26830;
double r26832 = 2.0;
double r26833 = r26831 / r26832;
double r26834 = 3.0;
double r26835 = sqrt(r26834);
double r26836 = r26835 / r26832;
double r26837 = /* ERROR: no complex support in C */;
double r26838 = r26837 * r26837;
double r26839 = r26838 * r26837;
double r26840 = r26839 * r26837;
double r26841 = -r26832;
double r26842 = 0.0;
double r26843 = /* ERROR: no complex support in C */;
double r26844 = r26843 * r26837;
double r26845 = r26844 * r26837;
double r26846 = r26845 * r26837;
double r26847 = r26840 + r26846;
double r26848 = 5.0;
double r26849 = /* ERROR: no complex support in C */;
double r26850 = r26849 * r26837;
double r26851 = r26850 * r26837;
double r26852 = r26847 + r26851;
double r26853 = 4.0;
double r26854 = /* ERROR: no complex support in C */;
double r26855 = r26854 * r26837;
double r26856 = r26852 + r26855;
double r26857 = 7.0;
double r26858 = /* ERROR: no complex support in C */;
double r26859 = r26856 + r26858;
double r26860 = /* ERROR: no complex support in C */;
return r26860;
}
Initial program 0
Final simplification0
herbie shell --seed 2019346 +o rules:numerics
(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))))