\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 r10198 = -1.0;
double r10199 = 1.0;
double r10200 = /* ERROR: no complex support in C */;
double r10201 = r10200 * r10200;
double r10202 = r10201 * r10200;
double r10203 = r10202 * r10200;
double r10204 = r10203 * r10200;
double r10205 = r10204 * r10200;
double r10206 = 6.0;
double r10207 = 0.0;
double r10208 = /* ERROR: no complex support in C */;
double r10209 = r10208 * r10200;
double r10210 = r10209 * r10200;
double r10211 = r10210 * r10200;
double r10212 = r10211 * r10200;
double r10213 = r10212 * r10200;
double r10214 = r10205 + r10213;
double r10215 = 15.0;
double r10216 = /* ERROR: no complex support in C */;
double r10217 = r10216 * r10200;
double r10218 = r10217 * r10200;
double r10219 = r10218 * r10200;
double r10220 = r10219 * r10200;
double r10221 = r10214 + r10220;
double r10222 = 20.0;
double r10223 = /* ERROR: no complex support in C */;
double r10224 = r10223 * r10200;
double r10225 = r10224 * r10200;
double r10226 = r10225 * r10200;
double r10227 = r10221 + r10226;
double r10228 = r10227 + r10218;
double r10229 = r10228 + r10209;
double r10230 = /* ERROR: no complex support in C */;
double r10231 = r10229 + r10230;
double r10232 = /* ERROR: no complex support in C */;
return r10232;
}
double f() {
double r10233 = -1.0;
double r10234 = 1.0;
double r10235 = /* ERROR: no complex support in C */;
double r10236 = r10235 * r10235;
double r10237 = 15.0;
double r10238 = 0.0;
double r10239 = /* ERROR: no complex support in C */;
double r10240 = r10239 * r10235;
double r10241 = 6.0;
double r10242 = /* ERROR: no complex support in C */;
double r10243 = r10235 + r10242;
double r10244 = r10236 * r10243;
double r10245 = r10240 + r10244;
double r10246 = r10236 * r10245;
double r10247 = r10235 * r10246;
double r10248 = 20.0;
double r10249 = /* ERROR: no complex support in C */;
double r10250 = r10249 * r10235;
double r10251 = r10250 + r10239;
double r10252 = r10235 * r10251;
double r10253 = r10252 + r10242;
double r10254 = r10235 * r10253;
double r10255 = r10247 + r10254;
double r10256 = /* ERROR: no complex support in C */;
double r10257 = r10255 + r10256;
double r10258 = /* ERROR: no complex support in C */;
return r10258;
}
Initial program 0
Simplified0
Final simplification0
herbie shell --seed 2019323 +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))))