\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(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\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(\frac{-1}{2} - 2\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right)\right)\right) + \left(4 + 0.0 i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r32663 = 1.0;
double r32664 = -r32663;
double r32665 = 2.0;
double r32666 = r32664 / r32665;
double r32667 = 3.0;
double r32668 = sqrt(r32667);
double r32669 = r32668 / r32665;
double r32670 = /* ERROR: no complex support in C */;
double r32671 = r32670 * r32670;
double r32672 = r32671 * r32670;
double r32673 = r32672 * r32670;
double r32674 = -r32665;
double r32675 = 0.0;
double r32676 = /* ERROR: no complex support in C */;
double r32677 = r32676 * r32670;
double r32678 = r32677 * r32670;
double r32679 = r32678 * r32670;
double r32680 = r32673 + r32679;
double r32681 = 5.0;
double r32682 = /* ERROR: no complex support in C */;
double r32683 = r32682 * r32670;
double r32684 = r32683 * r32670;
double r32685 = r32680 + r32684;
double r32686 = 4.0;
double r32687 = /* ERROR: no complex support in C */;
double r32688 = r32687 * r32670;
double r32689 = r32685 + r32688;
double r32690 = 7.0;
double r32691 = /* ERROR: no complex support in C */;
double r32692 = r32689 + r32691;
double r32693 = /* ERROR: no complex support in C */;
return r32693;
}
double f() {
double r32694 = 1.0;
double r32695 = -r32694;
double r32696 = 2.0;
double r32697 = r32695 / r32696;
double r32698 = 3.0;
double r32699 = sqrt(r32698);
double r32700 = r32699 / r32696;
double r32701 = /* ERROR: no complex support in C */;
double r32702 = 5.0;
double r32703 = 0.0;
double r32704 = /* ERROR: no complex support in C */;
double r32705 = r32697 - r32696;
double r32706 = r32700 + r32703;
double r32707 = /* ERROR: no complex support in C */;
double r32708 = r32701 * r32707;
double r32709 = r32704 + r32708;
double r32710 = r32701 * r32709;
double r32711 = 4.0;
double r32712 = /* ERROR: no complex support in C */;
double r32713 = r32710 + r32712;
double r32714 = r32701 * r32713;
double r32715 = 7.0;
double r32716 = /* ERROR: no complex support in C */;
double r32717 = r32714 + r32716;
double r32718 = /* ERROR: no complex support in C */;
return r32718;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2020047 +o rules:numerics
(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))))