\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 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 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 i\right) \cdot \left(\frac{-1}{2} + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(7 + 0 i\right)\right))\Re(\left(\left(5 + \frac{\sqrt{3}}{2} \cdot 4 i\right) + \left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{-\sqrt{3}}{2} i\right) \cdot \left(\left(6 + \frac{-2 \cdot \sqrt{3}}{2} i\right) + \left(\left(\frac{1}{4} - \frac{\sqrt{3}}{2} \cdot \frac{\sqrt{3}}{2}\right) + \frac{-\sqrt{3}}{2} i\right)\right)\right))double f() {
double r1397371 = 1.0;
double r1397372 = -r1397371;
double r1397373 = 2.0;
double r1397374 = r1397372 / r1397373;
double r1397375 = 3.0;
double r1397376 = sqrt(r1397375);
double r1397377 = r1397376 / r1397373;
double r1397378 = /* ERROR: no complex support in C */;
double r1397379 = r1397378 * r1397378;
double r1397380 = r1397379 * r1397378;
double r1397381 = r1397380 * r1397378;
double r1397382 = -r1397373;
double r1397383 = 0.0;
double r1397384 = /* ERROR: no complex support in C */;
double r1397385 = r1397384 * r1397378;
double r1397386 = r1397385 * r1397378;
double r1397387 = r1397386 * r1397378;
double r1397388 = r1397381 + r1397387;
double r1397389 = 5.0;
double r1397390 = /* ERROR: no complex support in C */;
double r1397391 = r1397390 * r1397378;
double r1397392 = r1397391 * r1397378;
double r1397393 = r1397388 + r1397392;
double r1397394 = 4.0;
double r1397395 = /* ERROR: no complex support in C */;
double r1397396 = r1397395 * r1397378;
double r1397397 = r1397393 + r1397396;
double r1397398 = 7.0;
double r1397399 = /* ERROR: no complex support in C */;
double r1397400 = r1397397 + r1397399;
double r1397401 = /* ERROR: no complex support in C */;
return r1397401;
}
double f() {
double r1397402 = 5.0;
double r1397403 = 3.0;
double r1397404 = sqrt(r1397403);
double r1397405 = 2.0;
double r1397406 = r1397404 / r1397405;
double r1397407 = 4.0;
double r1397408 = r1397406 * r1397407;
double r1397409 = /* ERROR: no complex support in C */;
double r1397410 = 0.25;
double r1397411 = r1397406 * r1397406;
double r1397412 = r1397410 - r1397411;
double r1397413 = -r1397404;
double r1397414 = r1397413 / r1397405;
double r1397415 = /* ERROR: no complex support in C */;
double r1397416 = 6.0;
double r1397417 = -2.0;
double r1397418 = r1397417 * r1397404;
double r1397419 = r1397418 / r1397405;
double r1397420 = /* ERROR: no complex support in C */;
double r1397421 = r1397420 + r1397415;
double r1397422 = r1397415 * r1397421;
double r1397423 = r1397409 + r1397422;
double r1397424 = /* ERROR: no complex support in C */;
return r1397424;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019120 +o rules:numerics
(FPCore ()
:name "3.9.2 real part (p56)"
(re (+.c (+.c (+.c (+.c (*.c (*.c (*.c (complex (/ (- 1) 2) (/ (sqrt 3) 2)) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (*.c (*.c (*.c (complex (- 2) 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (*.c (complex 5 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2))) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (*.c (complex 4 0) (complex (/ (- 1) 2) (/ (sqrt 3) 2)))) (complex 7 0))))