\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 r28112 = -1.0;
double r28113 = 1.0;
double r28114 = /* ERROR: no complex support in C */;
double r28115 = r28114 * r28114;
double r28116 = r28115 * r28114;
double r28117 = r28116 * r28114;
double r28118 = r28117 * r28114;
double r28119 = r28118 * r28114;
double r28120 = 6.0;
double r28121 = 0.0;
double r28122 = /* ERROR: no complex support in C */;
double r28123 = r28122 * r28114;
double r28124 = r28123 * r28114;
double r28125 = r28124 * r28114;
double r28126 = r28125 * r28114;
double r28127 = r28126 * r28114;
double r28128 = r28119 + r28127;
double r28129 = 15.0;
double r28130 = /* ERROR: no complex support in C */;
double r28131 = r28130 * r28114;
double r28132 = r28131 * r28114;
double r28133 = r28132 * r28114;
double r28134 = r28133 * r28114;
double r28135 = r28128 + r28134;
double r28136 = 20.0;
double r28137 = /* ERROR: no complex support in C */;
double r28138 = r28137 * r28114;
double r28139 = r28138 * r28114;
double r28140 = r28139 * r28114;
double r28141 = r28135 + r28140;
double r28142 = r28141 + r28132;
double r28143 = r28142 + r28123;
double r28144 = /* ERROR: no complex support in C */;
double r28145 = r28143 + r28144;
double r28146 = /* ERROR: no complex support in C */;
return r28146;
}
double f() {
double r28147 = -1.0;
double r28148 = 1.0;
double r28149 = /* ERROR: no complex support in C */;
double r28150 = r28149 * r28149;
double r28151 = r28150 * r28149;
double r28152 = r28151 * r28149;
double r28153 = r28152 * r28149;
double r28154 = r28153 * r28149;
double r28155 = 6.0;
double r28156 = 0.0;
double r28157 = /* ERROR: no complex support in C */;
double r28158 = r28157 * r28149;
double r28159 = r28158 * r28149;
double r28160 = r28159 * r28149;
double r28161 = r28160 * r28149;
double r28162 = r28161 * r28149;
double r28163 = r28154 + r28162;
double r28164 = 15.0;
double r28165 = /* ERROR: no complex support in C */;
double r28166 = r28165 * r28149;
double r28167 = r28166 * r28149;
double r28168 = r28167 * r28149;
double r28169 = r28168 * r28149;
double r28170 = r28163 + r28169;
double r28171 = 20.0;
double r28172 = /* ERROR: no complex support in C */;
double r28173 = r28172 * r28149;
double r28174 = r28173 * r28149;
double r28175 = r28174 * r28149;
double r28176 = r28170 + r28175;
double r28177 = r28176 + r28167;
double r28178 = r28177 + r28158;
double r28179 = /* ERROR: no complex support in C */;
double r28180 = r28178 + r28179;
double r28181 = /* ERROR: no complex support in C */;
return r28181;
}
Initial program 0
Final simplification0
herbie shell --seed 2019353 +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))))