\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(\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))double f() {
double r10498 = 1.0;
double r10499 = -r10498;
double r10500 = 2.0;
double r10501 = r10499 / r10500;
double r10502 = 3.0;
double r10503 = sqrt(r10502);
double r10504 = r10503 / r10500;
double r10505 = /* ERROR: no complex support in C */;
double r10506 = r10505 * r10505;
double r10507 = r10506 * r10505;
double r10508 = r10507 * r10505;
double r10509 = -r10500;
double r10510 = 0.0;
double r10511 = /* ERROR: no complex support in C */;
double r10512 = r10511 * r10505;
double r10513 = r10512 * r10505;
double r10514 = r10513 * r10505;
double r10515 = r10508 + r10514;
double r10516 = 5.0;
double r10517 = /* ERROR: no complex support in C */;
double r10518 = r10517 * r10505;
double r10519 = r10518 * r10505;
double r10520 = r10515 + r10519;
double r10521 = 4.0;
double r10522 = /* ERROR: no complex support in C */;
double r10523 = r10522 * r10505;
double r10524 = r10520 + r10523;
double r10525 = 7.0;
double r10526 = /* ERROR: no complex support in C */;
double r10527 = r10524 + r10526;
double r10528 = /* ERROR: no complex support in C */;
return r10528;
}
double f() {
double r10529 = 1.0;
double r10530 = -r10529;
double r10531 = 2.0;
double r10532 = r10530 / r10531;
double r10533 = 3.0;
double r10534 = sqrt(r10533);
double r10535 = r10534 / r10531;
double r10536 = /* ERROR: no complex support in C */;
double r10537 = r10536 * r10536;
double r10538 = r10537 * r10536;
double r10539 = r10538 * r10536;
double r10540 = -r10531;
double r10541 = 0.0;
double r10542 = /* ERROR: no complex support in C */;
double r10543 = r10542 * r10536;
double r10544 = r10543 * r10536;
double r10545 = r10544 * r10536;
double r10546 = r10539 + r10545;
double r10547 = 5.0;
double r10548 = /* ERROR: no complex support in C */;
double r10549 = r10548 * r10536;
double r10550 = r10549 * r10536;
double r10551 = r10546 + r10550;
double r10552 = 4.0;
double r10553 = /* ERROR: no complex support in C */;
double r10554 = r10553 * r10536;
double r10555 = r10551 + r10554;
double r10556 = 7.0;
double r10557 = /* ERROR: no complex support in C */;
double r10558 = r10555 + r10557;
double r10559 = /* ERROR: no complex support in C */;
return r10559;
}
Initial program 61.9
Final simplification61.9
herbie shell --seed 2019304
(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))))