Average Error: 61.9 → 0
Time: 23.3s
Precision: 64
\[\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(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \left(\left(\left(2 + \frac{1}{2}\right) \cdot \frac{1}{2} - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(-\left(\left(2 + \frac{1}{2}\right) \cdot \frac{\sqrt{3}}{2} + \frac{1}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right)\right) i\right)\right)\right) + \left(4 + 0.0 i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(7 + 0.0 i\right)\right))\]
\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(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \left(\left(\left(2 + \frac{1}{2}\right) \cdot \frac{1}{2} - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(-\left(\left(2 + \frac{1}{2}\right) \cdot \frac{\sqrt{3}}{2} + \frac{1}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right)\right) i\right)\right)\right) + \left(4 + 0.0 i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(7 + 0.0 i\right)\right))
double f() {
        double r2434893 = 1.0;
        double r2434894 = -r2434893;
        double r2434895 = 2.0;
        double r2434896 = r2434894 / r2434895;
        double r2434897 = 3.0;
        double r2434898 = sqrt(r2434897);
        double r2434899 = r2434898 / r2434895;
        double r2434900 = /* ERROR: no complex support in C */;
        double r2434901 = r2434900 * r2434900;
        double r2434902 = r2434901 * r2434900;
        double r2434903 = r2434902 * r2434900;
        double r2434904 = -r2434895;
        double r2434905 = 0.0;
        double r2434906 = /* ERROR: no complex support in C */;
        double r2434907 = r2434906 * r2434900;
        double r2434908 = r2434907 * r2434900;
        double r2434909 = r2434908 * r2434900;
        double r2434910 = r2434903 + r2434909;
        double r2434911 = 5.0;
        double r2434912 = /* ERROR: no complex support in C */;
        double r2434913 = r2434912 * r2434900;
        double r2434914 = r2434913 * r2434900;
        double r2434915 = r2434910 + r2434914;
        double r2434916 = 4.0;
        double r2434917 = /* ERROR: no complex support in C */;
        double r2434918 = r2434917 * r2434900;
        double r2434919 = r2434915 + r2434918;
        double r2434920 = 7.0;
        double r2434921 = /* ERROR: no complex support in C */;
        double r2434922 = r2434919 + r2434921;
        double r2434923 = /* ERROR: no complex support in C */;
        return r2434923;
}

double f() {
        double r2434924 = 1.0;
        double r2434925 = -r2434924;
        double r2434926 = 2.0;
        double r2434927 = r2434925 / r2434926;
        double r2434928 = 3.0;
        double r2434929 = sqrt(r2434928);
        double r2434930 = r2434929 / r2434926;
        double r2434931 = /* ERROR: no complex support in C */;
        double r2434932 = 5.0;
        double r2434933 = 0.0;
        double r2434934 = /* ERROR: no complex support in C */;
        double r2434935 = r2434924 / r2434926;
        double r2434936 = r2434926 + r2434935;
        double r2434937 = r2434936 * r2434935;
        double r2434938 = r2434930 + r2434933;
        double r2434939 = r2434930 * r2434938;
        double r2434940 = r2434937 - r2434939;
        double r2434941 = r2434936 * r2434930;
        double r2434942 = r2434935 * r2434938;
        double r2434943 = r2434941 + r2434942;
        double r2434944 = -r2434943;
        double r2434945 = /* ERROR: no complex support in C */;
        double r2434946 = r2434934 + r2434945;
        double r2434947 = r2434931 * r2434946;
        double r2434948 = 4.0;
        double r2434949 = /* ERROR: no complex support in C */;
        double r2434950 = r2434947 + r2434949;
        double r2434951 = r2434950 * r2434931;
        double r2434952 = 7.0;
        double r2434953 = /* ERROR: no complex support in C */;
        double r2434954 = r2434951 + r2434953;
        double r2434955 = /* ERROR: no complex support in C */;
        return r2434955;
}

Error

Derivation

  1. Initial program 61.9

    \[\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))\]
  2. Simplified0

    \[\leadsto \color{blue}{\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(5 + 0.0 i\right) + \left(\left(\frac{-1}{2} \cdot \left(\frac{-1}{2} + \left(-2\right)\right) - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(\frac{-1}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right) + \frac{\sqrt{3}}{2} \cdot \left(\frac{-1}{2} + \left(-2\right)\right)\right) i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(\left(\left(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \left(\left(\left(2 + \frac{1}{2}\right) \cdot \frac{1}{2} - \frac{\sqrt{3}}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right) + \left(-\left(\left(2 + \frac{1}{2}\right) \cdot \frac{\sqrt{3}}{2} + \frac{1}{2} \cdot \left(\frac{\sqrt{3}}{2} + 0.0\right)\right)\right) i\right)\right)\right) + \left(4 + 0.0 i\right)\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right) + \left(7 + 0.0 i\right)\right))\]

Reproduce

herbie shell --seed 2019171 
(FPCore ()
  :name "3.9.2 real part (p56)"
  (re (+ (+ (+ (+ (* (* (* (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (* (* (* (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (* (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))