Average Error: 0 → 0
Time: 21.6s
Precision: 64
\[\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))\]
\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 r33194 = -1.0;
        double r33195 = 1.0;
        double r33196 = /* ERROR: no complex support in C */;
        double r33197 = r33196 * r33196;
        double r33198 = r33197 * r33196;
        double r33199 = r33198 * r33196;
        double r33200 = r33199 * r33196;
        double r33201 = r33200 * r33196;
        double r33202 = 6.0;
        double r33203 = 0.0;
        double r33204 = /* ERROR: no complex support in C */;
        double r33205 = r33204 * r33196;
        double r33206 = r33205 * r33196;
        double r33207 = r33206 * r33196;
        double r33208 = r33207 * r33196;
        double r33209 = r33208 * r33196;
        double r33210 = r33201 + r33209;
        double r33211 = 15.0;
        double r33212 = /* ERROR: no complex support in C */;
        double r33213 = r33212 * r33196;
        double r33214 = r33213 * r33196;
        double r33215 = r33214 * r33196;
        double r33216 = r33215 * r33196;
        double r33217 = r33210 + r33216;
        double r33218 = 20.0;
        double r33219 = /* ERROR: no complex support in C */;
        double r33220 = r33219 * r33196;
        double r33221 = r33220 * r33196;
        double r33222 = r33221 * r33196;
        double r33223 = r33217 + r33222;
        double r33224 = r33223 + r33214;
        double r33225 = r33224 + r33205;
        double r33226 = /* ERROR: no complex support in C */;
        double r33227 = r33225 + r33226;
        double r33228 = /* ERROR: no complex support in C */;
        return r33228;
}

double f() {
        double r33229 = 6.0;
        double r33230 = 0.0;
        double r33231 = /* ERROR: no complex support in C */;
        double r33232 = -1.0;
        double r33233 = 1.0;
        double r33234 = /* ERROR: no complex support in C */;
        double r33235 = r33231 * r33234;
        double r33236 = 15.0;
        double r33237 = /* ERROR: no complex support in C */;
        double r33238 = r33234 * r33237;
        double r33239 = r33234 * r33238;
        double r33240 = 20.0;
        double r33241 = /* ERROR: no complex support in C */;
        double r33242 = r33241 * r33234;
        double r33243 = r33234 * r33242;
        double r33244 = r33243 * r33234;
        double r33245 = r33234 * r33235;
        double r33246 = r33245 * r33234;
        double r33247 = r33234 * r33246;
        double r33248 = r33247 * r33234;
        double r33249 = r33234 * r33234;
        double r33250 = r33249 * r33234;
        double r33251 = r33234 * r33250;
        double r33252 = r33234 * r33251;
        double r33253 = r33252 * r33234;
        double r33254 = r33248 + r33253;
        double r33255 = r33234 * r33239;
        double r33256 = r33234 * r33255;
        double r33257 = r33254 + r33256;
        double r33258 = r33244 + r33257;
        double r33259 = r33239 + r33258;
        double r33260 = r33235 + r33259;
        double r33261 = /* ERROR: no complex support in C */;
        double r33262 = r33260 + r33261;
        double r33263 = /* ERROR: no complex support in C */;
        return r33263;
}

Error

Derivation

  1. Initial program 0

    \[\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))\]
  2. Final simplification0

    \[\leadsto \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))\]

Reproduce

herbie shell --seed 2019195 +o rules:numerics
(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))))