\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(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(\left(15 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(\left(-1 + 1 i\right) + \left(6 + 0.0 i\right)\right)\right)\right)\right)\right) + \left(\left(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(15 + 0.0 i\right)\right)\right) + \left(6 + 0.0 i\right)\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r20792 = -1.0;
double r20793 = 1.0;
double r20794 = /* ERROR: no complex support in C */;
double r20795 = r20794 * r20794;
double r20796 = r20795 * r20794;
double r20797 = r20796 * r20794;
double r20798 = r20797 * r20794;
double r20799 = r20798 * r20794;
double r20800 = 6.0;
double r20801 = 0.0;
double r20802 = /* ERROR: no complex support in C */;
double r20803 = r20802 * r20794;
double r20804 = r20803 * r20794;
double r20805 = r20804 * r20794;
double r20806 = r20805 * r20794;
double r20807 = r20806 * r20794;
double r20808 = r20799 + r20807;
double r20809 = 15.0;
double r20810 = /* ERROR: no complex support in C */;
double r20811 = r20810 * r20794;
double r20812 = r20811 * r20794;
double r20813 = r20812 * r20794;
double r20814 = r20813 * r20794;
double r20815 = r20808 + r20814;
double r20816 = 20.0;
double r20817 = /* ERROR: no complex support in C */;
double r20818 = r20817 * r20794;
double r20819 = r20818 * r20794;
double r20820 = r20819 * r20794;
double r20821 = r20815 + r20820;
double r20822 = r20821 + r20812;
double r20823 = r20822 + r20803;
double r20824 = /* ERROR: no complex support in C */;
double r20825 = r20823 + r20824;
double r20826 = /* ERROR: no complex support in C */;
return r20826;
}
double f() {
double r20827 = -1.0;
double r20828 = 1.0;
double r20829 = /* ERROR: no complex support in C */;
double r20830 = r20829 * r20829;
double r20831 = 15.0;
double r20832 = 0.0;
double r20833 = /* ERROR: no complex support in C */;
double r20834 = r20833 * r20829;
double r20835 = 6.0;
double r20836 = /* ERROR: no complex support in C */;
double r20837 = r20829 + r20836;
double r20838 = r20830 * r20837;
double r20839 = r20834 + r20838;
double r20840 = r20830 * r20839;
double r20841 = r20829 * r20840;
double r20842 = 20.0;
double r20843 = /* ERROR: no complex support in C */;
double r20844 = r20843 * r20829;
double r20845 = r20844 + r20833;
double r20846 = r20829 * r20845;
double r20847 = r20846 + r20836;
double r20848 = r20829 * r20847;
double r20849 = r20841 + r20848;
double r20850 = /* ERROR: no complex support in C */;
double r20851 = r20849 + r20850;
double r20852 = /* ERROR: no complex support in C */;
return r20852;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019326 +o rules:numerics
(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))))