\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(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(20 + 0.0 i\right)\right)\right) + \left(\left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(6 + 0.0 i\right) + \left(-1 + 1 i\right)\right)\right)\right)\right) + \left(\left(-1 + 1 i\right) \cdot \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(6 + 0.0 i\right)\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r28598 = -1.0;
double r28599 = 1.0;
double r28600 = /* ERROR: no complex support in C */;
double r28601 = r28600 * r28600;
double r28602 = r28601 * r28600;
double r28603 = r28602 * r28600;
double r28604 = r28603 * r28600;
double r28605 = r28604 * r28600;
double r28606 = 6.0;
double r28607 = 0.0;
double r28608 = /* ERROR: no complex support in C */;
double r28609 = r28608 * r28600;
double r28610 = r28609 * r28600;
double r28611 = r28610 * r28600;
double r28612 = r28611 * r28600;
double r28613 = r28612 * r28600;
double r28614 = r28605 + r28613;
double r28615 = 15.0;
double r28616 = /* ERROR: no complex support in C */;
double r28617 = r28616 * r28600;
double r28618 = r28617 * r28600;
double r28619 = r28618 * r28600;
double r28620 = r28619 * r28600;
double r28621 = r28614 + r28620;
double r28622 = 20.0;
double r28623 = /* ERROR: no complex support in C */;
double r28624 = r28623 * r28600;
double r28625 = r28624 * r28600;
double r28626 = r28625 * r28600;
double r28627 = r28621 + r28626;
double r28628 = r28627 + r28618;
double r28629 = r28628 + r28609;
double r28630 = /* ERROR: no complex support in C */;
double r28631 = r28629 + r28630;
double r28632 = /* ERROR: no complex support in C */;
return r28632;
}
double f() {
double r28633 = -1.0;
double r28634 = 1.0;
double r28635 = /* ERROR: no complex support in C */;
double r28636 = r28635 * r28635;
double r28637 = 15.0;
double r28638 = 0.0;
double r28639 = /* ERROR: no complex support in C */;
double r28640 = r28639 * r28635;
double r28641 = 20.0;
double r28642 = /* ERROR: no complex support in C */;
double r28643 = r28640 + r28642;
double r28644 = r28635 * r28643;
double r28645 = r28636 * r28635;
double r28646 = 6.0;
double r28647 = /* ERROR: no complex support in C */;
double r28648 = r28647 + r28635;
double r28649 = r28645 * r28648;
double r28650 = r28644 + r28649;
double r28651 = r28636 * r28650;
double r28652 = r28640 + r28647;
double r28653 = r28635 * r28652;
double r28654 = r28651 + r28653;
double r28655 = /* ERROR: no complex support in C */;
double r28656 = r28654 + r28655;
double r28657 = /* ERROR: no complex support in C */;
return r28657;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019198 +o rules:numerics
(FPCore ()
:name "3.9.1 real part (p56)"
(re (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1.0 1.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (* (* (* (* (* (complex 6.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (complex 20.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (complex 6.0 0.0) (complex -1.0 1.0))) (complex 1.0 0.0))))