\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(4 + 0.0 i\right) + \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(-\left(\frac{1}{2} + 2\right)\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right) + \left(5 + 0.0 i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r28759 = 1.0;
double r28760 = -r28759;
double r28761 = 2.0;
double r28762 = r28760 / r28761;
double r28763 = 3.0;
double r28764 = sqrt(r28763);
double r28765 = r28764 / r28761;
double r28766 = /* ERROR: no complex support in C */;
double r28767 = r28766 * r28766;
double r28768 = r28767 * r28766;
double r28769 = r28768 * r28766;
double r28770 = -r28761;
double r28771 = 0.0;
double r28772 = /* ERROR: no complex support in C */;
double r28773 = r28772 * r28766;
double r28774 = r28773 * r28766;
double r28775 = r28774 * r28766;
double r28776 = r28769 + r28775;
double r28777 = 5.0;
double r28778 = /* ERROR: no complex support in C */;
double r28779 = r28778 * r28766;
double r28780 = r28779 * r28766;
double r28781 = r28776 + r28780;
double r28782 = 4.0;
double r28783 = /* ERROR: no complex support in C */;
double r28784 = r28783 * r28766;
double r28785 = r28781 + r28784;
double r28786 = 7.0;
double r28787 = /* ERROR: no complex support in C */;
double r28788 = r28785 + r28787;
double r28789 = /* ERROR: no complex support in C */;
return r28789;
}
double f() {
double r28790 = 1.0;
double r28791 = -r28790;
double r28792 = 2.0;
double r28793 = r28791 / r28792;
double r28794 = 3.0;
double r28795 = sqrt(r28794);
double r28796 = r28795 / r28792;
double r28797 = /* ERROR: no complex support in C */;
double r28798 = 4.0;
double r28799 = 0.0;
double r28800 = /* ERROR: no complex support in C */;
double r28801 = r28790 / r28792;
double r28802 = r28801 + r28792;
double r28803 = -r28802;
double r28804 = r28796 + r28799;
double r28805 = /* ERROR: no complex support in C */;
double r28806 = r28797 * r28805;
double r28807 = 5.0;
double r28808 = /* ERROR: no complex support in C */;
double r28809 = r28806 + r28808;
double r28810 = r28797 * r28809;
double r28811 = r28800 + r28810;
double r28812 = r28797 * r28811;
double r28813 = 7.0;
double r28814 = /* ERROR: no complex support in C */;
double r28815 = r28812 + r28814;
double r28816 = /* ERROR: no complex support in C */;
return r28816;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019351 +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))))