\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 r25833 = 1.0;
double r25834 = -r25833;
double r25835 = 2.0;
double r25836 = r25834 / r25835;
double r25837 = 3.0;
double r25838 = sqrt(r25837);
double r25839 = r25838 / r25835;
double r25840 = /* ERROR: no complex support in C */;
double r25841 = r25840 * r25840;
double r25842 = r25841 * r25840;
double r25843 = r25842 * r25840;
double r25844 = -r25835;
double r25845 = 0.0;
double r25846 = /* ERROR: no complex support in C */;
double r25847 = r25846 * r25840;
double r25848 = r25847 * r25840;
double r25849 = r25848 * r25840;
double r25850 = r25843 + r25849;
double r25851 = 5.0;
double r25852 = /* ERROR: no complex support in C */;
double r25853 = r25852 * r25840;
double r25854 = r25853 * r25840;
double r25855 = r25850 + r25854;
double r25856 = 4.0;
double r25857 = /* ERROR: no complex support in C */;
double r25858 = r25857 * r25840;
double r25859 = r25855 + r25858;
double r25860 = 7.0;
double r25861 = /* ERROR: no complex support in C */;
double r25862 = r25859 + r25861;
double r25863 = /* ERROR: no complex support in C */;
return r25863;
}
double f() {
double r25864 = 1.0;
double r25865 = -r25864;
double r25866 = 2.0;
double r25867 = r25865 / r25866;
double r25868 = 3.0;
double r25869 = sqrt(r25868);
double r25870 = r25869 / r25866;
double r25871 = /* ERROR: no complex support in C */;
double r25872 = r25871 * r25871;
double r25873 = r25872 * r25871;
double r25874 = r25873 * r25871;
double r25875 = -r25866;
double r25876 = 0.0;
double r25877 = /* ERROR: no complex support in C */;
double r25878 = r25877 * r25871;
double r25879 = r25878 * r25871;
double r25880 = r25879 * r25871;
double r25881 = r25874 + r25880;
double r25882 = 5.0;
double r25883 = /* ERROR: no complex support in C */;
double r25884 = r25883 * r25871;
double r25885 = r25884 * r25871;
double r25886 = r25881 + r25885;
double r25887 = 4.0;
double r25888 = /* ERROR: no complex support in C */;
double r25889 = r25888 * r25871;
double r25890 = r25886 + r25889;
double r25891 = 7.0;
double r25892 = /* ERROR: no complex support in C */;
double r25893 = r25890 + r25892;
double r25894 = /* ERROR: no complex support in C */;
return r25894;
}
Initial program 0
Final simplification0
herbie shell --seed 2020021
(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))))