\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(\left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(5 + 0.0 i\right) + \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)\right)\right) + \left(4 + 0.0 i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r25303 = 1.0;
double r25304 = -r25303;
double r25305 = 2.0;
double r25306 = r25304 / r25305;
double r25307 = 3.0;
double r25308 = sqrt(r25307);
double r25309 = r25308 / r25305;
double r25310 = /* ERROR: no complex support in C */;
double r25311 = r25310 * r25310;
double r25312 = r25311 * r25310;
double r25313 = r25312 * r25310;
double r25314 = -r25305;
double r25315 = 0.0;
double r25316 = /* ERROR: no complex support in C */;
double r25317 = r25316 * r25310;
double r25318 = r25317 * r25310;
double r25319 = r25318 * r25310;
double r25320 = r25313 + r25319;
double r25321 = 5.0;
double r25322 = /* ERROR: no complex support in C */;
double r25323 = r25322 * r25310;
double r25324 = r25323 * r25310;
double r25325 = r25320 + r25324;
double r25326 = 4.0;
double r25327 = /* ERROR: no complex support in C */;
double r25328 = r25327 * r25310;
double r25329 = r25325 + r25328;
double r25330 = 7.0;
double r25331 = /* ERROR: no complex support in C */;
double r25332 = r25329 + r25331;
double r25333 = /* ERROR: no complex support in C */;
return r25333;
}
double f() {
double r25334 = 1.0;
double r25335 = -r25334;
double r25336 = 2.0;
double r25337 = r25335 / r25336;
double r25338 = 3.0;
double r25339 = sqrt(r25338);
double r25340 = r25339 / r25336;
double r25341 = /* ERROR: no complex support in C */;
double r25342 = 5.0;
double r25343 = 0.0;
double r25344 = /* ERROR: no complex support in C */;
double r25345 = r25334 / r25336;
double r25346 = r25345 + r25336;
double r25347 = -r25346;
double r25348 = r25340 + r25343;
double r25349 = /* ERROR: no complex support in C */;
double r25350 = r25341 * r25349;
double r25351 = r25344 + r25350;
double r25352 = r25341 * r25351;
double r25353 = 4.0;
double r25354 = /* ERROR: no complex support in C */;
double r25355 = r25352 + r25354;
double r25356 = r25341 * r25355;
double r25357 = 7.0;
double r25358 = /* ERROR: no complex support in C */;
double r25359 = r25356 + r25358;
double r25360 = /* ERROR: no complex support in C */;
return r25360;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019209 +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))))