\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 r30789 = 1.0;
double r30790 = -r30789;
double r30791 = 2.0;
double r30792 = r30790 / r30791;
double r30793 = 3.0;
double r30794 = sqrt(r30793);
double r30795 = r30794 / r30791;
double r30796 = /* ERROR: no complex support in C */;
double r30797 = r30796 * r30796;
double r30798 = r30797 * r30796;
double r30799 = r30798 * r30796;
double r30800 = -r30791;
double r30801 = 0.0;
double r30802 = /* ERROR: no complex support in C */;
double r30803 = r30802 * r30796;
double r30804 = r30803 * r30796;
double r30805 = r30804 * r30796;
double r30806 = r30799 + r30805;
double r30807 = 5.0;
double r30808 = /* ERROR: no complex support in C */;
double r30809 = r30808 * r30796;
double r30810 = r30809 * r30796;
double r30811 = r30806 + r30810;
double r30812 = 4.0;
double r30813 = /* ERROR: no complex support in C */;
double r30814 = r30813 * r30796;
double r30815 = r30811 + r30814;
double r30816 = 7.0;
double r30817 = /* ERROR: no complex support in C */;
double r30818 = r30815 + r30817;
double r30819 = /* ERROR: no complex support in C */;
return r30819;
}
double f() {
double r30820 = 1.0;
double r30821 = -r30820;
double r30822 = 2.0;
double r30823 = r30821 / r30822;
double r30824 = 3.0;
double r30825 = sqrt(r30824);
double r30826 = r30825 / r30822;
double r30827 = /* ERROR: no complex support in C */;
double r30828 = r30827 * r30827;
double r30829 = r30828 * r30827;
double r30830 = r30829 * r30827;
double r30831 = -r30822;
double r30832 = 0.0;
double r30833 = /* ERROR: no complex support in C */;
double r30834 = r30833 * r30827;
double r30835 = r30834 * r30827;
double r30836 = r30835 * r30827;
double r30837 = r30830 + r30836;
double r30838 = 5.0;
double r30839 = /* ERROR: no complex support in C */;
double r30840 = r30839 * r30827;
double r30841 = r30840 * r30827;
double r30842 = r30837 + r30841;
double r30843 = 4.0;
double r30844 = /* ERROR: no complex support in C */;
double r30845 = r30844 * r30827;
double r30846 = r30842 + r30845;
double r30847 = 7.0;
double r30848 = /* ERROR: no complex support in C */;
double r30849 = r30846 + r30848;
double r30850 = /* ERROR: no complex support in C */;
return r30850;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2019318
(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))))