\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(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(15 + 0.0 i\right)\right)\right) + \left(\left(\left(\left(-1 + 1 i\right) \cdot \left(\left(20 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(\left(\left(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(6 + 0.0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) \cdot \left(-1 + 1 i\right)\right) + \left(\left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(\left(-1 + 1 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(\left(-1 + 1 i\right) \cdot \left(15 + 0.0 i\right)\right)\right)\right)\right)\right)\right)\right)\right) + \left(1 + 0.0 i\right)\right))
double f() {
double r10235 = -1.0;
double r10236 = 1.0;
double r10237 = /* ERROR: no complex support in C */;
double r10238 = r10237 * r10237;
double r10239 = r10238 * r10237;
double r10240 = r10239 * r10237;
double r10241 = r10240 * r10237;
double r10242 = r10241 * r10237;
double r10243 = 6.0;
double r10244 = 0.0;
double r10245 = /* ERROR: no complex support in C */;
double r10246 = r10245 * r10237;
double r10247 = r10246 * r10237;
double r10248 = r10247 * r10237;
double r10249 = r10248 * r10237;
double r10250 = r10249 * r10237;
double r10251 = r10242 + r10250;
double r10252 = 15.0;
double r10253 = /* ERROR: no complex support in C */;
double r10254 = r10253 * r10237;
double r10255 = r10254 * r10237;
double r10256 = r10255 * r10237;
double r10257 = r10256 * r10237;
double r10258 = r10251 + r10257;
double r10259 = 20.0;
double r10260 = /* ERROR: no complex support in C */;
double r10261 = r10260 * r10237;
double r10262 = r10261 * r10237;
double r10263 = r10262 * r10237;
double r10264 = r10258 + r10263;
double r10265 = r10264 + r10255;
double r10266 = r10265 + r10246;
double r10267 = /* ERROR: no complex support in C */;
double r10268 = r10266 + r10267;
double r10269 = /* ERROR: no complex support in C */;
return r10269;
}
double f() {
double r10270 = 6.0;
double r10271 = 0.0;
double r10272 = /* ERROR: no complex support in C */;
double r10273 = -1.0;
double r10274 = 1.0;
double r10275 = /* ERROR: no complex support in C */;
double r10276 = r10272 * r10275;
double r10277 = 15.0;
double r10278 = /* ERROR: no complex support in C */;
double r10279 = r10275 * r10278;
double r10280 = r10275 * r10279;
double r10281 = 20.0;
double r10282 = /* ERROR: no complex support in C */;
double r10283 = r10282 * r10275;
double r10284 = r10275 * r10283;
double r10285 = r10284 * r10275;
double r10286 = r10275 * r10276;
double r10287 = r10286 * r10275;
double r10288 = r10275 * r10287;
double r10289 = r10288 * r10275;
double r10290 = r10275 * r10275;
double r10291 = r10290 * r10275;
double r10292 = r10275 * r10291;
double r10293 = r10275 * r10292;
double r10294 = r10293 * r10275;
double r10295 = r10289 + r10294;
double r10296 = r10275 * r10280;
double r10297 = r10275 * r10296;
double r10298 = r10295 + r10297;
double r10299 = r10285 + r10298;
double r10300 = r10280 + r10299;
double r10301 = r10276 + r10300;
double r10302 = /* ERROR: no complex support in C */;
double r10303 = r10301 + r10302;
double r10304 = /* ERROR: no complex support in C */;
return r10304;
}
Initial program 0
Final simplification0
herbie shell --seed 2019195
(FPCore ()
:name "3.9.1 real part (p56)"
(re (+ (+ (+ (+ (+ (+ (* (* (* (* (* (complex -1.0 1.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (* (* (* (* (* (complex 6.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (* (complex 20.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (* (complex 15.0 0.0) (complex -1.0 1.0)) (complex -1.0 1.0))) (* (complex 6.0 0.0) (complex -1.0 1.0))) (complex 1.0 0.0))))