\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 r23230 = 1.0;
double r23231 = -r23230;
double r23232 = 2.0;
double r23233 = r23231 / r23232;
double r23234 = 3.0;
double r23235 = sqrt(r23234);
double r23236 = r23235 / r23232;
double r23237 = /* ERROR: no complex support in C */;
double r23238 = r23237 * r23237;
double r23239 = r23238 * r23237;
double r23240 = r23239 * r23237;
double r23241 = -r23232;
double r23242 = 0.0;
double r23243 = /* ERROR: no complex support in C */;
double r23244 = r23243 * r23237;
double r23245 = r23244 * r23237;
double r23246 = r23245 * r23237;
double r23247 = r23240 + r23246;
double r23248 = 5.0;
double r23249 = /* ERROR: no complex support in C */;
double r23250 = r23249 * r23237;
double r23251 = r23250 * r23237;
double r23252 = r23247 + r23251;
double r23253 = 4.0;
double r23254 = /* ERROR: no complex support in C */;
double r23255 = r23254 * r23237;
double r23256 = r23252 + r23255;
double r23257 = 7.0;
double r23258 = /* ERROR: no complex support in C */;
double r23259 = r23256 + r23258;
double r23260 = /* ERROR: no complex support in C */;
return r23260;
}
double f() {
double r23261 = 1.0;
double r23262 = -r23261;
double r23263 = 2.0;
double r23264 = r23262 / r23263;
double r23265 = 3.0;
double r23266 = sqrt(r23265);
double r23267 = r23266 / r23263;
double r23268 = /* ERROR: no complex support in C */;
double r23269 = r23268 * r23268;
double r23270 = r23269 * r23268;
double r23271 = r23270 * r23268;
double r23272 = -r23263;
double r23273 = 0.0;
double r23274 = /* ERROR: no complex support in C */;
double r23275 = r23274 * r23268;
double r23276 = r23275 * r23268;
double r23277 = r23276 * r23268;
double r23278 = r23271 + r23277;
double r23279 = 5.0;
double r23280 = /* ERROR: no complex support in C */;
double r23281 = r23280 * r23268;
double r23282 = r23281 * r23268;
double r23283 = r23278 + r23282;
double r23284 = 4.0;
double r23285 = /* ERROR: no complex support in C */;
double r23286 = r23285 * r23268;
double r23287 = r23283 + r23286;
double r23288 = 7.0;
double r23289 = /* ERROR: no complex support in C */;
double r23290 = r23287 + r23289;
double r23291 = /* ERROR: no complex support in C */;
return r23291;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020081 +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))))