Average Error: 61.9 → 0
Time: 29.7s
Precision: 64
\[\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) + \left(\left(\left(\left(\left(-2.0\right) + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\left(5.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(4.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))\]
\[\Re(\left(\left(7.0 + 0.0 i\right) + \left(\left(\left(4.0 + 0.0 i\right) + \left(\left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(5.0 + 0.0 i\right) + \left(\left(\left(\frac{1.0}{2.0} + 2.0\right) \cdot \frac{1.0}{2.0} - \frac{\sqrt{3.0}}{2.0} \cdot \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right)\right) + \left(\left(-\frac{\sqrt{3.0}}{2.0}\right) \cdot \left(\frac{1.0}{2.0} + 2.0\right) + \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right) \cdot \left(-\frac{1.0}{2.0}\right)\right) i\right)\right)\right)\right) \cdot \left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right))\]
\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) + \left(\left(\left(\left(\left(-2.0\right) + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\left(5.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(4.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))
\Re(\left(\left(7.0 + 0.0 i\right) + \left(\left(\left(4.0 + 0.0 i\right) + \left(\left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(5.0 + 0.0 i\right) + \left(\left(\left(\frac{1.0}{2.0} + 2.0\right) \cdot \frac{1.0}{2.0} - \frac{\sqrt{3.0}}{2.0} \cdot \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right)\right) + \left(\left(-\frac{\sqrt{3.0}}{2.0}\right) \cdot \left(\frac{1.0}{2.0} + 2.0\right) + \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right) \cdot \left(-\frac{1.0}{2.0}\right)\right) i\right)\right)\right)\right) \cdot \left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right))
double f() {
        double r2299692 = 1.0;
        double r2299693 = -r2299692;
        double r2299694 = 2.0;
        double r2299695 = r2299693 / r2299694;
        double r2299696 = 3.0;
        double r2299697 = sqrt(r2299696);
        double r2299698 = r2299697 / r2299694;
        double r2299699 = /* ERROR: no complex support in C */;
        double r2299700 = r2299699 * r2299699;
        double r2299701 = r2299700 * r2299699;
        double r2299702 = r2299701 * r2299699;
        double r2299703 = -r2299694;
        double r2299704 = 0.0;
        double r2299705 = /* ERROR: no complex support in C */;
        double r2299706 = r2299705 * r2299699;
        double r2299707 = r2299706 * r2299699;
        double r2299708 = r2299707 * r2299699;
        double r2299709 = r2299702 + r2299708;
        double r2299710 = 5.0;
        double r2299711 = /* ERROR: no complex support in C */;
        double r2299712 = r2299711 * r2299699;
        double r2299713 = r2299712 * r2299699;
        double r2299714 = r2299709 + r2299713;
        double r2299715 = 4.0;
        double r2299716 = /* ERROR: no complex support in C */;
        double r2299717 = r2299716 * r2299699;
        double r2299718 = r2299714 + r2299717;
        double r2299719 = 7.0;
        double r2299720 = /* ERROR: no complex support in C */;
        double r2299721 = r2299718 + r2299720;
        double r2299722 = /* ERROR: no complex support in C */;
        return r2299722;
}

double f() {
        double r2299723 = 7.0;
        double r2299724 = 0.0;
        double r2299725 = /* ERROR: no complex support in C */;
        double r2299726 = 4.0;
        double r2299727 = /* ERROR: no complex support in C */;
        double r2299728 = 1.0;
        double r2299729 = 2.0;
        double r2299730 = r2299728 / r2299729;
        double r2299731 = -r2299730;
        double r2299732 = 3.0;
        double r2299733 = sqrt(r2299732);
        double r2299734 = r2299733 / r2299729;
        double r2299735 = /* ERROR: no complex support in C */;
        double r2299736 = 5.0;
        double r2299737 = /* ERROR: no complex support in C */;
        double r2299738 = r2299730 + r2299729;
        double r2299739 = r2299738 * r2299730;
        double r2299740 = r2299724 + r2299734;
        double r2299741 = r2299734 * r2299740;
        double r2299742 = r2299739 - r2299741;
        double r2299743 = -r2299734;
        double r2299744 = r2299743 * r2299738;
        double r2299745 = r2299740 * r2299731;
        double r2299746 = r2299744 + r2299745;
        double r2299747 = /* ERROR: no complex support in C */;
        double r2299748 = r2299737 + r2299747;
        double r2299749 = r2299735 * r2299748;
        double r2299750 = r2299727 + r2299749;
        double r2299751 = r2299750 * r2299735;
        double r2299752 = r2299725 + r2299751;
        double r2299753 = /* ERROR: no complex support in C */;
        return r2299753;
}

Error

Derivation

  1. Initial program 61.9

    \[\Re(\left(\left(\left(\left(\left(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) + \left(\left(\left(\left(\left(-2.0\right) + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(\left(5.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(\left(4.0 + 0.0 i\right) \cdot \left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Re(\left(\left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(4.0 + 0.0 i\right) + \left(\left(\frac{-1.0}{2.0} + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(\left(\frac{-1.0}{2.0} \cdot \left(-\left(\frac{1.0}{2.0} + 2.0\right)\right) - \frac{\sqrt{3.0}}{2.0} \cdot \left(\frac{\sqrt{3.0}}{2.0} + 0.0\right)\right) + \left(\frac{-1.0}{2.0} \cdot \left(\frac{\sqrt{3.0}}{2.0} + 0.0\right) + \frac{\sqrt{3.0}}{2.0} \cdot \left(-\left(\frac{1.0}{2.0} + 2.0\right)\right)\right) i\right) + \left(5.0 + 0.0 i\right)\right)\right)\right)\right) + \left(7.0 + 0.0 i\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(7.0 + 0.0 i\right) + \left(\left(\left(4.0 + 0.0 i\right) + \left(\left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right) \cdot \left(\left(5.0 + 0.0 i\right) + \left(\left(\left(\frac{1.0}{2.0} + 2.0\right) \cdot \frac{1.0}{2.0} - \frac{\sqrt{3.0}}{2.0} \cdot \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right)\right) + \left(\left(-\frac{\sqrt{3.0}}{2.0}\right) \cdot \left(\frac{1.0}{2.0} + 2.0\right) + \left(0.0 + \frac{\sqrt{3.0}}{2.0}\right) \cdot \left(-\frac{1.0}{2.0}\right)\right) i\right)\right)\right)\right) \cdot \left(\left(-\frac{1.0}{2.0}\right) + \frac{\sqrt{3.0}}{2.0} i\right)\right)\right))\]

Reproduce

herbie shell --seed 2019165 
(FPCore ()
  :name "3.9.2 real part (p56)"
  (re (+.c (+.c (+.c (+.c (*.c (*.c (*.c (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))) (*.c (*.c (*.c (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)))) (*.c (*.c (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)))) (*.c (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))