\Re(\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))\Re(\left(\left(\frac{11}{2} + \left(\frac{\sqrt{3}}{-2} + \left(-\sqrt{3}\right)\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))double f() {
double r914863 = 1.0;
double r914864 = -r914863;
double r914865 = 2.0;
double r914866 = r914864 / r914865;
double r914867 = 3.0;
double r914868 = sqrt(r914867);
double r914869 = r914868 / r914865;
double r914870 = /* ERROR: no complex support in C */;
double r914871 = r914870 * r914870;
double r914872 = r914871 * r914870;
double r914873 = r914872 * r914870;
double r914874 = -r914865;
double r914875 = 0.0;
double r914876 = /* ERROR: no complex support in C */;
double r914877 = r914876 * r914870;
double r914878 = r914877 * r914870;
double r914879 = r914878 * r914870;
double r914880 = r914873 + r914879;
double r914881 = 5.0;
double r914882 = /* ERROR: no complex support in C */;
double r914883 = r914882 * r914870;
double r914884 = r914883 * r914870;
double r914885 = r914880 + r914884;
double r914886 = 4.0;
double r914887 = /* ERROR: no complex support in C */;
double r914888 = r914887 * r914870;
double r914889 = r914885 + r914888;
double r914890 = 7.0;
double r914891 = /* ERROR: no complex support in C */;
double r914892 = r914889 + r914891;
double r914893 = /* ERROR: no complex support in C */;
return r914893;
}
double f() {
double r914894 = 5.5;
double r914895 = 3.0;
double r914896 = sqrt(r914895);
double r914897 = -2.0;
double r914898 = r914896 / r914897;
double r914899 = -r914896;
double r914900 = r914898 + r914899;
double r914901 = /* ERROR: no complex support in C */;
double r914902 = -0.5;
double r914903 = /* ERROR: no complex support in C */;
double r914904 = r914901 * r914903;
double r914905 = 5.0;
double r914906 = 2.0;
double r914907 = r914896 * r914906;
double r914908 = /* ERROR: no complex support in C */;
double r914909 = r914904 + r914908;
double r914910 = /* ERROR: no complex support in C */;
return r914910;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019152 +o rules:numerics
(FPCore ()
:name "3.9.2 real part (p56)"
(re (+.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))))