\Re(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
\Re(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r32637 = -1.0;
double r32638 = 1.0;
double r32639 = /* ERROR: no complex support in C */;
double r32640 = r32639 * r32639;
double r32641 = r32640 * r32639;
double r32642 = r32641 * r32639;
double r32643 = r32642 * r32639;
double r32644 = r32643 * r32639;
double r32645 = 6.0;
double r32646 = 0.0;
double r32647 = /* ERROR: no complex support in C */;
double r32648 = r32647 * r32639;
double r32649 = r32648 * r32639;
double r32650 = r32649 * r32639;
double r32651 = r32650 * r32639;
double r32652 = r32651 * r32639;
double r32653 = r32644 + r32652;
double r32654 = 15.0;
double r32655 = /* ERROR: no complex support in C */;
double r32656 = r32655 * r32639;
double r32657 = r32656 * r32639;
double r32658 = r32657 * r32639;
double r32659 = r32658 * r32639;
double r32660 = r32653 + r32659;
double r32661 = 20.0;
double r32662 = /* ERROR: no complex support in C */;
double r32663 = r32662 * r32639;
double r32664 = r32663 * r32639;
double r32665 = r32664 * r32639;
double r32666 = r32660 + r32665;
double r32667 = r32666 + r32657;
double r32668 = r32667 + r32648;
double r32669 = /* ERROR: no complex support in C */;
double r32670 = r32668 + r32669;
double r32671 = /* ERROR: no complex support in C */;
return r32671;
}
double f() {
double r32672 = -1.0;
double r32673 = 1.0;
double r32674 = /* ERROR: no complex support in C */;
double r32675 = r32674 * r32674;
double r32676 = r32675 * r32674;
double r32677 = r32676 * r32674;
double r32678 = r32677 * r32674;
double r32679 = r32678 * r32674;
double r32680 = 6.0;
double r32681 = 0.0;
double r32682 = /* ERROR: no complex support in C */;
double r32683 = r32682 * r32674;
double r32684 = r32683 * r32674;
double r32685 = r32684 * r32674;
double r32686 = r32685 * r32674;
double r32687 = r32686 * r32674;
double r32688 = r32679 + r32687;
double r32689 = 15.0;
double r32690 = /* ERROR: no complex support in C */;
double r32691 = r32690 * r32674;
double r32692 = r32691 * r32674;
double r32693 = r32692 * r32674;
double r32694 = r32693 * r32674;
double r32695 = r32688 + r32694;
double r32696 = 20.0;
double r32697 = /* ERROR: no complex support in C */;
double r32698 = r32697 * r32674;
double r32699 = r32698 * r32674;
double r32700 = r32699 * r32674;
double r32701 = r32695 + r32700;
double r32702 = r32701 + r32692;
double r32703 = r32702 + r32683;
double r32704 = /* ERROR: no complex support in C */;
double r32705 = r32703 + r32704;
double r32706 = /* ERROR: no complex support in C */;
return r32706;
}
Initial program 0
Final simplification0
herbie shell --seed 2020056
(FPCore ()
:name "3.9.1 real part (p56)"
:precision binary64
(re (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (* (* (* (* (* (complex 6 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (* (complex 20 0.0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (* (* (complex 15 0.0) (complex -1 1)) (complex -1 1))) (* (complex 6 0.0) (complex -1 1))) (complex 1 0.0))))