\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 r20920 = -1.0;
double r20921 = 1.0;
double r20922 = /* ERROR: no complex support in C */;
double r20923 = r20922 * r20922;
double r20924 = r20923 * r20922;
double r20925 = r20924 * r20922;
double r20926 = r20925 * r20922;
double r20927 = r20926 * r20922;
double r20928 = 6.0;
double r20929 = 0.0;
double r20930 = /* ERROR: no complex support in C */;
double r20931 = r20930 * r20922;
double r20932 = r20931 * r20922;
double r20933 = r20932 * r20922;
double r20934 = r20933 * r20922;
double r20935 = r20934 * r20922;
double r20936 = r20927 + r20935;
double r20937 = 15.0;
double r20938 = /* ERROR: no complex support in C */;
double r20939 = r20938 * r20922;
double r20940 = r20939 * r20922;
double r20941 = r20940 * r20922;
double r20942 = r20941 * r20922;
double r20943 = r20936 + r20942;
double r20944 = 20.0;
double r20945 = /* ERROR: no complex support in C */;
double r20946 = r20945 * r20922;
double r20947 = r20946 * r20922;
double r20948 = r20947 * r20922;
double r20949 = r20943 + r20948;
double r20950 = r20949 + r20940;
double r20951 = r20950 + r20931;
double r20952 = /* ERROR: no complex support in C */;
double r20953 = r20951 + r20952;
double r20954 = /* ERROR: no complex support in C */;
return r20954;
}
double f() {
double r20955 = -1.0;
double r20956 = 1.0;
double r20957 = /* ERROR: no complex support in C */;
double r20958 = r20957 * r20957;
double r20959 = 15.0;
double r20960 = 0.0;
double r20961 = /* ERROR: no complex support in C */;
double r20962 = r20961 * r20957;
double r20963 = 6.0;
double r20964 = /* ERROR: no complex support in C */;
double r20965 = r20957 + r20964;
double r20966 = r20958 * r20965;
double r20967 = r20962 + r20966;
double r20968 = r20958 * r20967;
double r20969 = r20957 * r20968;
double r20970 = 20.0;
double r20971 = /* ERROR: no complex support in C */;
double r20972 = r20971 * r20957;
double r20973 = r20972 + r20961;
double r20974 = r20957 * r20973;
double r20975 = r20974 + r20964;
double r20976 = r20957 * r20975;
double r20977 = r20969 + r20976;
double r20978 = /* ERROR: no complex support in C */;
double r20979 = r20977 + r20978;
double r20980 = /* ERROR: no complex support in C */;
return r20980;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019306 +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))))