Average Error: 61.9 → 0
Time: 22.7s
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 r2307331 = 1.0;
        double r2307332 = -r2307331;
        double r2307333 = 2.0;
        double r2307334 = r2307332 / r2307333;
        double r2307335 = 3.0;
        double r2307336 = sqrt(r2307335);
        double r2307337 = r2307336 / r2307333;
        double r2307338 = /* ERROR: no complex support in C */;
        double r2307339 = r2307338 * r2307338;
        double r2307340 = r2307339 * r2307338;
        double r2307341 = r2307340 * r2307338;
        double r2307342 = -r2307333;
        double r2307343 = 0.0;
        double r2307344 = /* ERROR: no complex support in C */;
        double r2307345 = r2307344 * r2307338;
        double r2307346 = r2307345 * r2307338;
        double r2307347 = r2307346 * r2307338;
        double r2307348 = r2307341 + r2307347;
        double r2307349 = 5.0;
        double r2307350 = /* ERROR: no complex support in C */;
        double r2307351 = r2307350 * r2307338;
        double r2307352 = r2307351 * r2307338;
        double r2307353 = r2307348 + r2307352;
        double r2307354 = 4.0;
        double r2307355 = /* ERROR: no complex support in C */;
        double r2307356 = r2307355 * r2307338;
        double r2307357 = r2307353 + r2307356;
        double r2307358 = 7.0;
        double r2307359 = /* ERROR: no complex support in C */;
        double r2307360 = r2307357 + r2307359;
        double r2307361 = /* ERROR: no complex support in C */;
        return r2307361;
}

double f() {
        double r2307362 = 1.0;
        double r2307363 = -r2307362;
        double r2307364 = 2.0;
        double r2307365 = r2307363 / r2307364;
        double r2307366 = 3.0;
        double r2307367 = sqrt(r2307366);
        double r2307368 = r2307367 / r2307364;
        double r2307369 = /* ERROR: no complex support in C */;
        double r2307370 = 5.0;
        double r2307371 = 0.0;
        double r2307372 = /* ERROR: no complex support in C */;
        double r2307373 = r2307362 / r2307364;
        double r2307374 = r2307364 + r2307373;
        double r2307375 = r2307374 * r2307373;
        double r2307376 = r2307368 + r2307371;
        double r2307377 = r2307368 * r2307376;
        double r2307378 = r2307375 - r2307377;
        double r2307379 = r2307374 * r2307368;
        double r2307380 = r2307373 * r2307376;
        double r2307381 = r2307379 + r2307380;
        double r2307382 = -r2307381;
        double r2307383 = /* ERROR: no complex support in C */;
        double r2307384 = r2307372 + r2307383;
        double r2307385 = r2307369 * r2307384;
        double r2307386 = 4.0;
        double r2307387 = /* ERROR: no complex support in C */;
        double r2307388 = r2307385 + r2307387;
        double r2307389 = r2307388 * r2307369;
        double r2307390 = 7.0;
        double r2307391 = /* ERROR: no complex support in C */;
        double r2307392 = r2307389 + r2307391;
        double r2307393 = /* ERROR: no complex support in C */;
        return r2307393;
}

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 2019174 
(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))))