\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(4 + 0.0 i\right) + \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(-\left(\frac{1}{2} + 2\right)\right) + \left(\frac{\sqrt{3}}{2} + 0.0\right) i\right)\right) + \left(5 + 0.0 i\right)\right)\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r25378 = 1.0;
double r25379 = -r25378;
double r25380 = 2.0;
double r25381 = r25379 / r25380;
double r25382 = 3.0;
double r25383 = sqrt(r25382);
double r25384 = r25383 / r25380;
double r25385 = /* ERROR: no complex support in C */;
double r25386 = r25385 * r25385;
double r25387 = r25386 * r25385;
double r25388 = r25387 * r25385;
double r25389 = -r25380;
double r25390 = 0.0;
double r25391 = /* ERROR: no complex support in C */;
double r25392 = r25391 * r25385;
double r25393 = r25392 * r25385;
double r25394 = r25393 * r25385;
double r25395 = r25388 + r25394;
double r25396 = 5.0;
double r25397 = /* ERROR: no complex support in C */;
double r25398 = r25397 * r25385;
double r25399 = r25398 * r25385;
double r25400 = r25395 + r25399;
double r25401 = 4.0;
double r25402 = /* ERROR: no complex support in C */;
double r25403 = r25402 * r25385;
double r25404 = r25400 + r25403;
double r25405 = 7.0;
double r25406 = /* ERROR: no complex support in C */;
double r25407 = r25404 + r25406;
double r25408 = /* ERROR: no complex support in C */;
return r25408;
}
double f() {
double r25409 = 1.0;
double r25410 = -r25409;
double r25411 = 2.0;
double r25412 = r25410 / r25411;
double r25413 = 3.0;
double r25414 = sqrt(r25413);
double r25415 = r25414 / r25411;
double r25416 = /* ERROR: no complex support in C */;
double r25417 = 4.0;
double r25418 = 0.0;
double r25419 = /* ERROR: no complex support in C */;
double r25420 = r25409 / r25411;
double r25421 = r25420 + r25411;
double r25422 = -r25421;
double r25423 = r25415 + r25418;
double r25424 = /* ERROR: no complex support in C */;
double r25425 = r25416 * r25424;
double r25426 = 5.0;
double r25427 = /* ERROR: no complex support in C */;
double r25428 = r25425 + r25427;
double r25429 = r25416 * r25428;
double r25430 = r25419 + r25429;
double r25431 = r25416 * r25430;
double r25432 = 7.0;
double r25433 = /* ERROR: no complex support in C */;
double r25434 = r25431 + r25433;
double r25435 = /* ERROR: no complex support in C */;
return r25435;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019322 +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))))