\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 r30242 = 1.0;
double r30243 = -r30242;
double r30244 = 2.0;
double r30245 = r30243 / r30244;
double r30246 = 3.0;
double r30247 = sqrt(r30246);
double r30248 = r30247 / r30244;
double r30249 = /* ERROR: no complex support in C */;
double r30250 = r30249 * r30249;
double r30251 = r30250 * r30249;
double r30252 = r30251 * r30249;
double r30253 = -r30244;
double r30254 = 0.0;
double r30255 = /* ERROR: no complex support in C */;
double r30256 = r30255 * r30249;
double r30257 = r30256 * r30249;
double r30258 = r30257 * r30249;
double r30259 = r30252 + r30258;
double r30260 = 5.0;
double r30261 = /* ERROR: no complex support in C */;
double r30262 = r30261 * r30249;
double r30263 = r30262 * r30249;
double r30264 = r30259 + r30263;
double r30265 = 4.0;
double r30266 = /* ERROR: no complex support in C */;
double r30267 = r30266 * r30249;
double r30268 = r30264 + r30267;
double r30269 = 7.0;
double r30270 = /* ERROR: no complex support in C */;
double r30271 = r30268 + r30270;
double r30272 = /* ERROR: no complex support in C */;
return r30272;
}
double f() {
double r30273 = 1.0;
double r30274 = -r30273;
double r30275 = 2.0;
double r30276 = r30274 / r30275;
double r30277 = 3.0;
double r30278 = sqrt(r30277);
double r30279 = r30278 / r30275;
double r30280 = /* ERROR: no complex support in C */;
double r30281 = r30280 * r30280;
double r30282 = r30281 * r30280;
double r30283 = r30282 * r30280;
double r30284 = -r30275;
double r30285 = 0.0;
double r30286 = /* ERROR: no complex support in C */;
double r30287 = r30286 * r30280;
double r30288 = r30287 * r30280;
double r30289 = r30288 * r30280;
double r30290 = r30283 + r30289;
double r30291 = 5.0;
double r30292 = /* ERROR: no complex support in C */;
double r30293 = r30292 * r30280;
double r30294 = r30293 * r30280;
double r30295 = r30290 + r30294;
double r30296 = 4.0;
double r30297 = /* ERROR: no complex support in C */;
double r30298 = r30297 * r30280;
double r30299 = r30295 + r30298;
double r30300 = 7.0;
double r30301 = /* ERROR: no complex support in C */;
double r30302 = r30299 + r30301;
double r30303 = /* ERROR: no complex support in C */;
return r30303;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2020062
(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))))