\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(4 + 0.0 i\right) + \left(\left(\left(5 + 0.0 i\right) + \left(\left(\left(-\frac{1}{2}\right) + \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) \cdot \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right)\right) \cdot \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r25557 = 1.0;
double r25558 = -r25557;
double r25559 = 2.0;
double r25560 = r25558 / r25559;
double r25561 = 3.0;
double r25562 = sqrt(r25561);
double r25563 = r25562 / r25559;
double r25564 = /* ERROR: no complex support in C */;
double r25565 = r25564 * r25564;
double r25566 = r25565 * r25564;
double r25567 = r25566 * r25564;
double r25568 = -r25559;
double r25569 = 0.0;
double r25570 = /* ERROR: no complex support in C */;
double r25571 = r25570 * r25564;
double r25572 = r25571 * r25564;
double r25573 = r25572 * r25564;
double r25574 = r25567 + r25573;
double r25575 = 5.0;
double r25576 = /* ERROR: no complex support in C */;
double r25577 = r25576 * r25564;
double r25578 = r25577 * r25564;
double r25579 = r25574 + r25578;
double r25580 = 4.0;
double r25581 = /* ERROR: no complex support in C */;
double r25582 = r25581 * r25564;
double r25583 = r25579 + r25582;
double r25584 = 7.0;
double r25585 = /* ERROR: no complex support in C */;
double r25586 = r25583 + r25585;
double r25587 = /* ERROR: no complex support in C */;
return r25587;
}
double f() {
double r25588 = 4.0;
double r25589 = 0.0;
double r25590 = /* ERROR: no complex support in C */;
double r25591 = 5.0;
double r25592 = /* ERROR: no complex support in C */;
double r25593 = 1.0;
double r25594 = 2.0;
double r25595 = r25593 / r25594;
double r25596 = -r25595;
double r25597 = 3.0;
double r25598 = sqrt(r25597);
double r25599 = r25598 / r25594;
double r25600 = /* ERROR: no complex support in C */;
double r25601 = r25595 + r25594;
double r25602 = -r25601;
double r25603 = r25599 + r25589;
double r25604 = /* ERROR: no complex support in C */;
double r25605 = r25600 * r25604;
double r25606 = r25592 + r25605;
double r25607 = r25606 * r25600;
double r25608 = r25590 + r25607;
double r25609 = r25608 * r25600;
double r25610 = 7.0;
double r25611 = /* ERROR: no complex support in C */;
double r25612 = r25609 + r25611;
double r25613 = /* ERROR: no complex support in C */;
return r25613;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019196 +o rules:numerics
(FPCore ()
:name "3.9.2 real part (p56)"
(re (+ (+ (+ (+ (* (* (* (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (* (* (* (complex (- 2.0) 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (* (complex 5.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0))) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (* (complex 4.0 0.0) (complex (/ (- 1.0) 2.0) (/ (sqrt 3.0) 2.0)))) (complex 7.0 0.0))))