\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(\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))double f() {
double r16703 = 1.0;
double r16704 = -r16703;
double r16705 = 2.0;
double r16706 = r16704 / r16705;
double r16707 = 3.0;
double r16708 = sqrt(r16707);
double r16709 = r16708 / r16705;
double r16710 = /* ERROR: no complex support in C */;
double r16711 = r16710 * r16710;
double r16712 = r16711 * r16710;
double r16713 = r16712 * r16710;
double r16714 = -r16705;
double r16715 = 0.0;
double r16716 = /* ERROR: no complex support in C */;
double r16717 = r16716 * r16710;
double r16718 = r16717 * r16710;
double r16719 = r16718 * r16710;
double r16720 = r16713 + r16719;
double r16721 = 5.0;
double r16722 = /* ERROR: no complex support in C */;
double r16723 = r16722 * r16710;
double r16724 = r16723 * r16710;
double r16725 = r16720 + r16724;
double r16726 = 4.0;
double r16727 = /* ERROR: no complex support in C */;
double r16728 = r16727 * r16710;
double r16729 = r16725 + r16728;
double r16730 = 7.0;
double r16731 = /* ERROR: no complex support in C */;
double r16732 = r16729 + r16731;
double r16733 = /* ERROR: no complex support in C */;
return r16733;
}
double f() {
double r16734 = 1.0;
double r16735 = -r16734;
double r16736 = 2.0;
double r16737 = r16735 / r16736;
double r16738 = 3.0;
double r16739 = sqrt(r16738);
double r16740 = r16739 / r16736;
double r16741 = /* ERROR: no complex support in C */;
double r16742 = r16741 * r16741;
double r16743 = r16742 * r16741;
double r16744 = r16743 * r16741;
double r16745 = -r16736;
double r16746 = 0.0;
double r16747 = /* ERROR: no complex support in C */;
double r16748 = r16747 * r16741;
double r16749 = r16748 * r16741;
double r16750 = r16749 * r16741;
double r16751 = r16744 + r16750;
double r16752 = 5.0;
double r16753 = /* ERROR: no complex support in C */;
double r16754 = r16753 * r16741;
double r16755 = r16754 * r16741;
double r16756 = r16751 + r16755;
double r16757 = 4.0;
double r16758 = /* ERROR: no complex support in C */;
double r16759 = r16758 * r16741;
double r16760 = r16756 + r16759;
double r16761 = 7.0;
double r16762 = /* ERROR: no complex support in C */;
double r16763 = r16760 + r16762;
double r16764 = /* ERROR: no complex support in C */;
return r16764;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020060
(FPCore ()
:name "3.9.2 real part (p56)"
:precision binary64
(re (+ (+ (+ (+ (* (* (* (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (* (* (* (complex (- 2) 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (* (complex 5 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (* (complex 4 0.0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0.0))))