\Im(\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))
\Im(\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 r10257 = -1.0;
double r10258 = 1.0;
double r10259 = /* ERROR: no complex support in C */;
double r10260 = r10259 * r10259;
double r10261 = r10260 * r10259;
double r10262 = r10261 * r10259;
double r10263 = r10262 * r10259;
double r10264 = r10263 * r10259;
double r10265 = 6.0;
double r10266 = 0.0;
double r10267 = /* ERROR: no complex support in C */;
double r10268 = r10267 * r10259;
double r10269 = r10268 * r10259;
double r10270 = r10269 * r10259;
double r10271 = r10270 * r10259;
double r10272 = r10271 * r10259;
double r10273 = r10264 + r10272;
double r10274 = 15.0;
double r10275 = /* ERROR: no complex support in C */;
double r10276 = r10275 * r10259;
double r10277 = r10276 * r10259;
double r10278 = r10277 * r10259;
double r10279 = r10278 * r10259;
double r10280 = r10273 + r10279;
double r10281 = 20.0;
double r10282 = /* ERROR: no complex support in C */;
double r10283 = r10282 * r10259;
double r10284 = r10283 * r10259;
double r10285 = r10284 * r10259;
double r10286 = r10280 + r10285;
double r10287 = r10286 + r10277;
double r10288 = r10287 + r10268;
double r10289 = /* ERROR: no complex support in C */;
double r10290 = r10288 + r10289;
double r10291 = /* ERROR: no complex support in C */;
return r10291;
}
double f() {
double r10292 = -1.0;
double r10293 = 1.0;
double r10294 = /* ERROR: no complex support in C */;
double r10295 = r10294 * r10294;
double r10296 = r10295 * r10294;
double r10297 = r10296 * r10294;
double r10298 = r10297 * r10294;
double r10299 = r10298 * r10294;
double r10300 = 6.0;
double r10301 = 0.0;
double r10302 = /* ERROR: no complex support in C */;
double r10303 = r10302 * r10294;
double r10304 = r10303 * r10294;
double r10305 = r10304 * r10294;
double r10306 = r10305 * r10294;
double r10307 = r10306 * r10294;
double r10308 = r10299 + r10307;
double r10309 = 15.0;
double r10310 = /* ERROR: no complex support in C */;
double r10311 = r10310 * r10294;
double r10312 = r10311 * r10294;
double r10313 = r10312 * r10294;
double r10314 = r10313 * r10294;
double r10315 = r10308 + r10314;
double r10316 = 20.0;
double r10317 = /* ERROR: no complex support in C */;
double r10318 = r10317 * r10294;
double r10319 = r10318 * r10294;
double r10320 = r10319 * r10294;
double r10321 = r10315 + r10320;
double r10322 = r10321 + r10312;
double r10323 = r10322 + r10303;
double r10324 = /* ERROR: no complex support in C */;
double r10325 = r10323 + r10324;
double r10326 = /* ERROR: no complex support in C */;
return r10326;
}
Initial program 0
Final simplification0
herbie shell --seed 2019323 +o rules:numerics
(FPCore ()
:name "3.9.1 imaginary part (p56)"
:precision binary64
(im (+ (+ (+ (+ (+ (+ (* (* (* (* (* (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))))