Average Error: 61.9 → 0
Time: 15.9s
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(4 + 0.0 i\right) + \left(\left(\left(5 + 0.0 i\right) + \left(\left(\left(-\frac{1}{2}\right) + \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) \cdot \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right)\right) \cdot \left(\left(-\frac{1}{2}\right) + \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(4 + 0.0 i\right) + \left(\left(\left(5 + 0.0 i\right) + \left(\left(\left(-\frac{1}{2}\right) + \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) \cdot \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right)\right) \cdot \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right) + \left(7 + 0.0 i\right)\right))
double f() {
        double r10086 = 1.0;
        double r10087 = -r10086;
        double r10088 = 2.0;
        double r10089 = r10087 / r10088;
        double r10090 = 3.0;
        double r10091 = sqrt(r10090);
        double r10092 = r10091 / r10088;
        double r10093 = /* ERROR: no complex support in C */;
        double r10094 = r10093 * r10093;
        double r10095 = r10094 * r10093;
        double r10096 = r10095 * r10093;
        double r10097 = -r10088;
        double r10098 = 0.0;
        double r10099 = /* ERROR: no complex support in C */;
        double r10100 = r10099 * r10093;
        double r10101 = r10100 * r10093;
        double r10102 = r10101 * r10093;
        double r10103 = r10096 + r10102;
        double r10104 = 5.0;
        double r10105 = /* ERROR: no complex support in C */;
        double r10106 = r10105 * r10093;
        double r10107 = r10106 * r10093;
        double r10108 = r10103 + r10107;
        double r10109 = 4.0;
        double r10110 = /* ERROR: no complex support in C */;
        double r10111 = r10110 * r10093;
        double r10112 = r10108 + r10111;
        double r10113 = 7.0;
        double r10114 = /* ERROR: no complex support in C */;
        double r10115 = r10112 + r10114;
        double r10116 = /* ERROR: no complex support in C */;
        return r10116;
}

double f() {
        double r10117 = 4.0;
        double r10118 = 0.0;
        double r10119 = /* ERROR: no complex support in C */;
        double r10120 = 5.0;
        double r10121 = /* ERROR: no complex support in C */;
        double r10122 = 1.0;
        double r10123 = 2.0;
        double r10124 = r10122 / r10123;
        double r10125 = -r10124;
        double r10126 = 3.0;
        double r10127 = sqrt(r10126);
        double r10128 = r10127 / r10123;
        double r10129 = /* ERROR: no complex support in C */;
        double r10130 = r10124 + r10123;
        double r10131 = -r10130;
        double r10132 = r10128 + r10118;
        double r10133 = /* ERROR: no complex support in C */;
        double r10134 = r10129 * r10133;
        double r10135 = r10121 + r10134;
        double r10136 = r10135 * r10129;
        double r10137 = r10119 + r10136;
        double r10138 = r10137 * r10129;
        double r10139 = 7.0;
        double r10140 = /* ERROR: no complex support in C */;
        double r10141 = r10138 + r10140;
        double r10142 = /* ERROR: no complex support in C */;
        return r10142;
}

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} + \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)\right)\right) + \left(7 + 0.0 i\right)\right))}\]
  3. Final simplification0

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

Reproduce

herbie shell --seed 2019194 +o rules:numerics
(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))))