\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(\frac{-1}{2} - 2\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 r28823 = 1.0;
double r28824 = -r28823;
double r28825 = 2.0;
double r28826 = r28824 / r28825;
double r28827 = 3.0;
double r28828 = sqrt(r28827);
double r28829 = r28828 / r28825;
double r28830 = /* ERROR: no complex support in C */;
double r28831 = r28830 * r28830;
double r28832 = r28831 * r28830;
double r28833 = r28832 * r28830;
double r28834 = -r28825;
double r28835 = 0.0;
double r28836 = /* ERROR: no complex support in C */;
double r28837 = r28836 * r28830;
double r28838 = r28837 * r28830;
double r28839 = r28838 * r28830;
double r28840 = r28833 + r28839;
double r28841 = 5.0;
double r28842 = /* ERROR: no complex support in C */;
double r28843 = r28842 * r28830;
double r28844 = r28843 * r28830;
double r28845 = r28840 + r28844;
double r28846 = 4.0;
double r28847 = /* ERROR: no complex support in C */;
double r28848 = r28847 * r28830;
double r28849 = r28845 + r28848;
double r28850 = 7.0;
double r28851 = /* ERROR: no complex support in C */;
double r28852 = r28849 + r28851;
double r28853 = /* ERROR: no complex support in C */;
return r28853;
}
double f() {
double r28854 = 1.0;
double r28855 = -r28854;
double r28856 = 2.0;
double r28857 = r28855 / r28856;
double r28858 = 3.0;
double r28859 = sqrt(r28858);
double r28860 = r28859 / r28856;
double r28861 = /* ERROR: no complex support in C */;
double r28862 = 5.0;
double r28863 = 0.0;
double r28864 = /* ERROR: no complex support in C */;
double r28865 = r28857 - r28856;
double r28866 = r28860 + r28863;
double r28867 = /* ERROR: no complex support in C */;
double r28868 = r28861 * r28867;
double r28869 = r28864 + r28868;
double r28870 = r28861 * r28869;
double r28871 = 4.0;
double r28872 = /* ERROR: no complex support in C */;
double r28873 = r28870 + r28872;
double r28874 = r28861 * r28873;
double r28875 = 7.0;
double r28876 = /* ERROR: no complex support in C */;
double r28877 = r28874 + r28876;
double r28878 = /* ERROR: no complex support in C */;
return r28878;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2020045 +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))))