\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 r23237 = -1.0;
double r23238 = 1.0;
double r23239 = /* ERROR: no complex support in C */;
double r23240 = r23239 * r23239;
double r23241 = r23240 * r23239;
double r23242 = r23241 * r23239;
double r23243 = r23242 * r23239;
double r23244 = r23243 * r23239;
double r23245 = 6.0;
double r23246 = 0.0;
double r23247 = /* ERROR: no complex support in C */;
double r23248 = r23247 * r23239;
double r23249 = r23248 * r23239;
double r23250 = r23249 * r23239;
double r23251 = r23250 * r23239;
double r23252 = r23251 * r23239;
double r23253 = r23244 + r23252;
double r23254 = 15.0;
double r23255 = /* ERROR: no complex support in C */;
double r23256 = r23255 * r23239;
double r23257 = r23256 * r23239;
double r23258 = r23257 * r23239;
double r23259 = r23258 * r23239;
double r23260 = r23253 + r23259;
double r23261 = 20.0;
double r23262 = /* ERROR: no complex support in C */;
double r23263 = r23262 * r23239;
double r23264 = r23263 * r23239;
double r23265 = r23264 * r23239;
double r23266 = r23260 + r23265;
double r23267 = r23266 + r23257;
double r23268 = r23267 + r23248;
double r23269 = /* ERROR: no complex support in C */;
double r23270 = r23268 + r23269;
double r23271 = /* ERROR: no complex support in C */;
return r23271;
}
double f() {
double r23272 = -1.0;
double r23273 = 1.0;
double r23274 = /* ERROR: no complex support in C */;
double r23275 = r23274 * r23274;
double r23276 = 15.0;
double r23277 = 0.0;
double r23278 = /* ERROR: no complex support in C */;
double r23279 = r23278 * r23274;
double r23280 = 6.0;
double r23281 = /* ERROR: no complex support in C */;
double r23282 = r23274 + r23281;
double r23283 = r23275 * r23282;
double r23284 = r23279 + r23283;
double r23285 = r23275 * r23284;
double r23286 = r23274 * r23285;
double r23287 = 20.0;
double r23288 = /* ERROR: no complex support in C */;
double r23289 = r23288 * r23274;
double r23290 = r23289 + r23278;
double r23291 = r23274 * r23290;
double r23292 = r23291 + r23281;
double r23293 = r23274 * r23292;
double r23294 = r23286 + r23293;
double r23295 = /* ERROR: no complex support in C */;
double r23296 = r23294 + r23295;
double r23297 = /* ERROR: no complex support in C */;
return r23297;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019347 +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))))