\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(4 + 0.0 i\right) + \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(-\left(\frac{1}{2} + 2\right)\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right) + \left(5 + 0.0 i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r24832 = 1.0;
double r24833 = -r24832;
double r24834 = 2.0;
double r24835 = r24833 / r24834;
double r24836 = 3.0;
double r24837 = sqrt(r24836);
double r24838 = r24837 / r24834;
double r24839 = /* ERROR: no complex support in C */;
double r24840 = r24839 * r24839;
double r24841 = r24840 * r24839;
double r24842 = r24841 * r24839;
double r24843 = -r24834;
double r24844 = 0.0;
double r24845 = /* ERROR: no complex support in C */;
double r24846 = r24845 * r24839;
double r24847 = r24846 * r24839;
double r24848 = r24847 * r24839;
double r24849 = r24842 + r24848;
double r24850 = 5.0;
double r24851 = /* ERROR: no complex support in C */;
double r24852 = r24851 * r24839;
double r24853 = r24852 * r24839;
double r24854 = r24849 + r24853;
double r24855 = 4.0;
double r24856 = /* ERROR: no complex support in C */;
double r24857 = r24856 * r24839;
double r24858 = r24854 + r24857;
double r24859 = 7.0;
double r24860 = /* ERROR: no complex support in C */;
double r24861 = r24858 + r24860;
double r24862 = /* ERROR: no complex support in C */;
return r24862;
}
double f() {
double r24863 = 1.0;
double r24864 = -r24863;
double r24865 = 2.0;
double r24866 = r24864 / r24865;
double r24867 = 3.0;
double r24868 = sqrt(r24867);
double r24869 = r24868 / r24865;
double r24870 = /* ERROR: no complex support in C */;
double r24871 = 4.0;
double r24872 = 0.0;
double r24873 = /* ERROR: no complex support in C */;
double r24874 = r24863 / r24865;
double r24875 = r24874 + r24865;
double r24876 = -r24875;
double r24877 = r24869 + r24872;
double r24878 = /* ERROR: no complex support in C */;
double r24879 = r24870 * r24878;
double r24880 = 5.0;
double r24881 = /* ERROR: no complex support in C */;
double r24882 = r24879 + r24881;
double r24883 = r24870 * r24882;
double r24884 = r24873 + r24883;
double r24885 = r24870 * r24884;
double r24886 = 7.0;
double r24887 = /* ERROR: no complex support in C */;
double r24888 = r24885 + r24887;
double r24889 = /* ERROR: no complex support in C */;
return r24889;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019323 +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))))