Average Error: 61.9 → 0
Time: 22.5s
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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\]
\[\Re(\left(\left(\frac{11}{2} + \left(\left(-\sqrt{3}\right) - \frac{\sqrt{3}}{2}\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))
\Re(\left(\left(\frac{11}{2} + \left(\left(-\sqrt{3}\right) - \frac{\sqrt{3}}{2}\right) i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{-2} i\right) + \left(5 + \sqrt{3} \cdot 2 i\right)\right))
double f() {
        double r916181 = 1.0;
        double r916182 = -r916181;
        double r916183 = 2.0;
        double r916184 = r916182 / r916183;
        double r916185 = 3.0;
        double r916186 = sqrt(r916185);
        double r916187 = r916186 / r916183;
        double r916188 = /* ERROR: no complex support in C */;
        double r916189 = r916188 * r916188;
        double r916190 = r916189 * r916188;
        double r916191 = r916190 * r916188;
        double r916192 = -r916183;
        double r916193 = 0.0;
        double r916194 = /* ERROR: no complex support in C */;
        double r916195 = r916194 * r916188;
        double r916196 = r916195 * r916188;
        double r916197 = r916196 * r916188;
        double r916198 = r916191 + r916197;
        double r916199 = 5.0;
        double r916200 = /* ERROR: no complex support in C */;
        double r916201 = r916200 * r916188;
        double r916202 = r916201 * r916188;
        double r916203 = r916198 + r916202;
        double r916204 = 4.0;
        double r916205 = /* ERROR: no complex support in C */;
        double r916206 = r916205 * r916188;
        double r916207 = r916203 + r916206;
        double r916208 = 7.0;
        double r916209 = /* ERROR: no complex support in C */;
        double r916210 = r916207 + r916209;
        double r916211 = /* ERROR: no complex support in C */;
        return r916211;
}

double f() {
        double r916212 = 5.5;
        double r916213 = 3.0;
        double r916214 = sqrt(r916213);
        double r916215 = -r916214;
        double r916216 = 2.0;
        double r916217 = r916214 / r916216;
        double r916218 = r916215 - r916217;
        double r916219 = /* ERROR: no complex support in C */;
        double r916220 = -0.5;
        double r916221 = -2.0;
        double r916222 = r916214 / r916221;
        double r916223 = /* ERROR: no complex support in C */;
        double r916224 = r916219 * r916223;
        double r916225 = 5.0;
        double r916226 = r916214 * r916216;
        double r916227 = /* ERROR: no complex support in C */;
        double r916228 = r916224 + r916227;
        double r916229 = /* ERROR: no complex support in C */;
        return r916229;
}

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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Re(\left(\left(5 + 2 \cdot \sqrt{3} i\right) + \left(\left(\left(\frac{1}{4} - \frac{3}{4}\right) + \frac{\sqrt{3}}{-2} i\right) \cdot \left(\left(\left(\frac{5}{4} - \frac{3}{4}\right) + 5\right) + \left(-1 \cdot \sqrt{3} - \frac{\sqrt{3}}{2}\right) i\right)\right)\right))}\]
  3. Final simplification0

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

Reproduce

herbie shell --seed 2019149 
(FPCore ()
  :name "3.9.2 real part (p56)"
  (re (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))