\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 r24046 = 1.0;
double r24047 = -r24046;
double r24048 = 2.0;
double r24049 = r24047 / r24048;
double r24050 = 3.0;
double r24051 = sqrt(r24050);
double r24052 = r24051 / r24048;
double r24053 = /* ERROR: no complex support in C */;
double r24054 = r24053 * r24053;
double r24055 = r24054 * r24053;
double r24056 = r24055 * r24053;
double r24057 = -r24048;
double r24058 = 0.0;
double r24059 = /* ERROR: no complex support in C */;
double r24060 = r24059 * r24053;
double r24061 = r24060 * r24053;
double r24062 = r24061 * r24053;
double r24063 = r24056 + r24062;
double r24064 = 5.0;
double r24065 = /* ERROR: no complex support in C */;
double r24066 = r24065 * r24053;
double r24067 = r24066 * r24053;
double r24068 = r24063 + r24067;
double r24069 = 4.0;
double r24070 = /* ERROR: no complex support in C */;
double r24071 = r24070 * r24053;
double r24072 = r24068 + r24071;
double r24073 = 7.0;
double r24074 = /* ERROR: no complex support in C */;
double r24075 = r24072 + r24074;
double r24076 = /* ERROR: no complex support in C */;
return r24076;
}
double f() {
double r24077 = 1.0;
double r24078 = -r24077;
double r24079 = 2.0;
double r24080 = r24078 / r24079;
double r24081 = 3.0;
double r24082 = sqrt(r24081);
double r24083 = r24082 / r24079;
double r24084 = /* ERROR: no complex support in C */;
double r24085 = r24084 * r24084;
double r24086 = r24085 * r24084;
double r24087 = r24086 * r24084;
double r24088 = -r24079;
double r24089 = 0.0;
double r24090 = /* ERROR: no complex support in C */;
double r24091 = r24090 * r24084;
double r24092 = r24091 * r24084;
double r24093 = r24092 * r24084;
double r24094 = r24087 + r24093;
double r24095 = 5.0;
double r24096 = /* ERROR: no complex support in C */;
double r24097 = r24096 * r24084;
double r24098 = r24097 * r24084;
double r24099 = r24094 + r24098;
double r24100 = 4.0;
double r24101 = /* ERROR: no complex support in C */;
double r24102 = r24101 * r24084;
double r24103 = r24099 + r24102;
double r24104 = 7.0;
double r24105 = /* ERROR: no complex support in C */;
double r24106 = r24103 + r24105;
double r24107 = /* ERROR: no complex support in C */;
return r24107;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2019298
(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))))