\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(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right) \cdot \left(\left(\left(-2\right) + 0.0 i\right) + \left(\left(-\frac{1}{2}\right) + \frac{\sqrt{3}}{2} i\right)\right)\right) + \left(5 + 0.0 i\right)\right)\right) + \left(4 + 0.0 i\right)\right)\right) + \left(7 + 0.0 i\right)\right))double f() {
double r1334530 = 1.0;
double r1334531 = -r1334530;
double r1334532 = 2.0;
double r1334533 = r1334531 / r1334532;
double r1334534 = 3.0;
double r1334535 = sqrt(r1334534);
double r1334536 = r1334535 / r1334532;
double r1334537 = /* ERROR: no complex support in C */;
double r1334538 = r1334537 * r1334537;
double r1334539 = r1334538 * r1334537;
double r1334540 = r1334539 * r1334537;
double r1334541 = -r1334532;
double r1334542 = 0.0;
double r1334543 = /* ERROR: no complex support in C */;
double r1334544 = r1334543 * r1334537;
double r1334545 = r1334544 * r1334537;
double r1334546 = r1334545 * r1334537;
double r1334547 = r1334540 + r1334546;
double r1334548 = 5.0;
double r1334549 = /* ERROR: no complex support in C */;
double r1334550 = r1334549 * r1334537;
double r1334551 = r1334550 * r1334537;
double r1334552 = r1334547 + r1334551;
double r1334553 = 4.0;
double r1334554 = /* ERROR: no complex support in C */;
double r1334555 = r1334554 * r1334537;
double r1334556 = r1334552 + r1334555;
double r1334557 = 7.0;
double r1334558 = /* ERROR: no complex support in C */;
double r1334559 = r1334556 + r1334558;
double r1334560 = /* ERROR: no complex support in C */;
return r1334560;
}
double f() {
double r1334561 = 1.0;
double r1334562 = 2.0;
double r1334563 = r1334561 / r1334562;
double r1334564 = -r1334563;
double r1334565 = 3.0;
double r1334566 = sqrt(r1334565);
double r1334567 = r1334566 / r1334562;
double r1334568 = /* ERROR: no complex support in C */;
double r1334569 = -r1334562;
double r1334570 = 0.0;
double r1334571 = /* ERROR: no complex support in C */;
double r1334572 = r1334571 + r1334568;
double r1334573 = r1334568 * r1334572;
double r1334574 = 5.0;
double r1334575 = /* ERROR: no complex support in C */;
double r1334576 = r1334573 + r1334575;
double r1334577 = r1334568 * r1334576;
double r1334578 = 4.0;
double r1334579 = /* ERROR: no complex support in C */;
double r1334580 = r1334577 + r1334579;
double r1334581 = r1334568 * r1334580;
double r1334582 = 7.0;
double r1334583 = /* ERROR: no complex support in C */;
double r1334584 = r1334581 + r1334583;
double r1334585 = /* ERROR: no complex support in C */;
return r1334585;
}
Initial program 61.9
Simplified0
Final simplification0
herbie shell --seed 2019200 +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))))