\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.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))\Re(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(-\left(\frac{1}{2} + 2\right)\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right)\right)\right) + \left(4 + 0.0 i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r29835 = 1.0;
double r29836 = -r29835;
double r29837 = 2.0;
double r29838 = r29836 / r29837;
double r29839 = 3.0;
double r29840 = sqrt(r29839);
double r29841 = r29840 / r29837;
double r29842 = /* ERROR: no complex support in C */;
double r29843 = r29842 * r29842;
double r29844 = r29843 * r29842;
double r29845 = r29844 * r29842;
double r29846 = -r29837;
double r29847 = 0.0;
double r29848 = /* ERROR: no complex support in C */;
double r29849 = r29848 * r29842;
double r29850 = r29849 * r29842;
double r29851 = r29850 * r29842;
double r29852 = r29845 + r29851;
double r29853 = 5.0;
double r29854 = /* ERROR: no complex support in C */;
double r29855 = r29854 * r29842;
double r29856 = r29855 * r29842;
double r29857 = r29852 + r29856;
double r29858 = 4.0;
double r29859 = /* ERROR: no complex support in C */;
double r29860 = r29859 * r29842;
double r29861 = r29857 + r29860;
double r29862 = 7.0;
double r29863 = /* ERROR: no complex support in C */;
double r29864 = r29861 + r29863;
double r29865 = /* ERROR: no complex support in C */;
return r29865;
}
double f() {
double r29866 = 1.0;
double r29867 = -r29866;
double r29868 = 2.0;
double r29869 = r29867 / r29868;
double r29870 = 3.0;
double r29871 = sqrt(r29870);
double r29872 = r29871 / r29868;
double r29873 = /* ERROR: no complex support in C */;
double r29874 = 5.0;
double r29875 = 0.0;
double r29876 = /* ERROR: no complex support in C */;
double r29877 = r29866 / r29868;
double r29878 = r29877 + r29868;
double r29879 = -r29878;
double r29880 = r29872 + r29875;
double r29881 = /* ERROR: no complex support in C */;
double r29882 = r29873 * r29881;
double r29883 = r29876 + r29882;
double r29884 = r29873 * r29883;
double r29885 = 4.0;
double r29886 = /* ERROR: no complex support in C */;
double r29887 = r29884 + r29886;
double r29888 = r29873 * r29887;
double r29889 = 7.0;
double r29890 = /* ERROR: no complex support in C */;
double r29891 = r29888 + r29890;
double r29892 = /* ERROR: no complex support in C */;
return r29892;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019208 +o rules:numerics
(FPCore ()
:name "3.9.2 real part (p56)"
:precision binary64
(re (+ (+ (+ (+ (* (* (* (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))))