\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 r21880 = 1.0;
double r21881 = -r21880;
double r21882 = 2.0;
double r21883 = r21881 / r21882;
double r21884 = 3.0;
double r21885 = sqrt(r21884);
double r21886 = r21885 / r21882;
double r21887 = /* ERROR: no complex support in C */;
double r21888 = r21887 * r21887;
double r21889 = r21888 * r21887;
double r21890 = r21889 * r21887;
double r21891 = -r21882;
double r21892 = 0.0;
double r21893 = /* ERROR: no complex support in C */;
double r21894 = r21893 * r21887;
double r21895 = r21894 * r21887;
double r21896 = r21895 * r21887;
double r21897 = r21890 + r21896;
double r21898 = 5.0;
double r21899 = /* ERROR: no complex support in C */;
double r21900 = r21899 * r21887;
double r21901 = r21900 * r21887;
double r21902 = r21897 + r21901;
double r21903 = 4.0;
double r21904 = /* ERROR: no complex support in C */;
double r21905 = r21904 * r21887;
double r21906 = r21902 + r21905;
double r21907 = 7.0;
double r21908 = /* ERROR: no complex support in C */;
double r21909 = r21906 + r21908;
double r21910 = /* ERROR: no complex support in C */;
return r21910;
}
double f() {
double r21911 = 1.0;
double r21912 = -r21911;
double r21913 = 2.0;
double r21914 = r21912 / r21913;
double r21915 = 3.0;
double r21916 = sqrt(r21915);
double r21917 = r21916 / r21913;
double r21918 = /* ERROR: no complex support in C */;
double r21919 = r21918 * r21918;
double r21920 = r21919 * r21918;
double r21921 = r21920 * r21918;
double r21922 = -r21913;
double r21923 = 0.0;
double r21924 = /* ERROR: no complex support in C */;
double r21925 = r21924 * r21918;
double r21926 = r21925 * r21918;
double r21927 = r21926 * r21918;
double r21928 = r21921 + r21927;
double r21929 = 5.0;
double r21930 = /* ERROR: no complex support in C */;
double r21931 = r21930 * r21918;
double r21932 = r21931 * r21918;
double r21933 = r21928 + r21932;
double r21934 = 4.0;
double r21935 = /* ERROR: no complex support in C */;
double r21936 = r21935 * r21918;
double r21937 = r21933 + r21936;
double r21938 = 7.0;
double r21939 = /* ERROR: no complex support in C */;
double r21940 = r21937 + r21939;
double r21941 = /* ERROR: no complex support in C */;
return r21941;
}
Initial program 0
Final simplification0
herbie shell --seed 2019325
(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))))