Average Error: 0 → 0
Time: 25.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(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) + \left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right)\right)\right)\right) + \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(15 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - 0.0 \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(15 \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + 0.0 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) + \left(\left(\left(20 \cdot -1 - 0.0 \cdot 1\right) + \left(20 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right)\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(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) + \left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right)\right)\right)\right) + \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(15 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - 0.0 \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(15 \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + 0.0 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) + \left(\left(\left(20 \cdot -1 - 0.0 \cdot 1\right) + \left(20 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right)\right)\right))
double f() {
        double r3732169 = -1.0;
        double r3732170 = 1.0;
        double r3732171 = /* ERROR: no complex support in C */;
        double r3732172 = r3732171 * r3732171;
        double r3732173 = r3732172 * r3732171;
        double r3732174 = r3732173 * r3732171;
        double r3732175 = r3732174 * r3732171;
        double r3732176 = r3732175 * r3732171;
        double r3732177 = 6.0;
        double r3732178 = 0.0;
        double r3732179 = /* ERROR: no complex support in C */;
        double r3732180 = r3732179 * r3732171;
        double r3732181 = r3732180 * r3732171;
        double r3732182 = r3732181 * r3732171;
        double r3732183 = r3732182 * r3732171;
        double r3732184 = r3732183 * r3732171;
        double r3732185 = r3732176 + r3732184;
        double r3732186 = 15.0;
        double r3732187 = /* ERROR: no complex support in C */;
        double r3732188 = r3732187 * r3732171;
        double r3732189 = r3732188 * r3732171;
        double r3732190 = r3732189 * r3732171;
        double r3732191 = r3732190 * r3732171;
        double r3732192 = r3732185 + r3732191;
        double r3732193 = 20.0;
        double r3732194 = /* ERROR: no complex support in C */;
        double r3732195 = r3732194 * r3732171;
        double r3732196 = r3732195 * r3732171;
        double r3732197 = r3732196 * r3732171;
        double r3732198 = r3732192 + r3732197;
        double r3732199 = r3732198 + r3732189;
        double r3732200 = r3732199 + r3732180;
        double r3732201 = /* ERROR: no complex support in C */;
        double r3732202 = r3732200 + r3732201;
        double r3732203 = /* ERROR: no complex support in C */;
        return r3732203;
}

double f() {
        double r3732204 = 6.0;
        double r3732205 = -1.0;
        double r3732206 = r3732204 * r3732205;
        double r3732207 = 0.0;
        double r3732208 = 1.0;
        double r3732209 = r3732207 * r3732208;
        double r3732210 = r3732206 - r3732209;
        double r3732211 = r3732204 * r3732208;
        double r3732212 = r3732207 * r3732205;
        double r3732213 = r3732211 + r3732212;
        double r3732214 = /* ERROR: no complex support in C */;
        double r3732215 = /* ERROR: no complex support in C */;
        double r3732216 = r3732214 + r3732215;
        double r3732217 = r3732205 * r3732205;
        double r3732218 = r3732208 * r3732208;
        double r3732219 = r3732217 - r3732218;
        double r3732220 = r3732219 * r3732219;
        double r3732221 = r3732208 * r3732205;
        double r3732222 = r3732221 + r3732221;
        double r3732223 = r3732222 * r3732222;
        double r3732224 = r3732220 - r3732223;
        double r3732225 = r3732222 * r3732219;
        double r3732226 = r3732225 + r3732225;
        double r3732227 = /* ERROR: no complex support in C */;
        double r3732228 = /* ERROR: no complex support in C */;
        double r3732229 = r3732228 + r3732214;
        double r3732230 = r3732227 * r3732229;
        double r3732231 = r3732216 + r3732230;
        double r3732232 = 15.0;
        double r3732233 = r3732232 * r3732219;
        double r3732234 = r3732207 * r3732222;
        double r3732235 = r3732233 - r3732234;
        double r3732236 = r3732232 * r3732222;
        double r3732237 = r3732207 * r3732219;
        double r3732238 = r3732236 + r3732237;
        double r3732239 = /* ERROR: no complex support in C */;
        double r3732240 = 20.0;
        double r3732241 = r3732240 * r3732205;
        double r3732242 = r3732241 - r3732209;
        double r3732243 = r3732240 * r3732208;
        double r3732244 = r3732243 + r3732212;
        double r3732245 = /* ERROR: no complex support in C */;
        double r3732246 = /* ERROR: no complex support in C */;
        double r3732247 = r3732245 + r3732246;
        double r3732248 = r3732239 + r3732247;
        double r3732249 = r3732228 * r3732248;
        double r3732250 = r3732231 + r3732249;
        double r3732251 = /* ERROR: no complex support in C */;
        return r3732251;
}

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. Simplified0

    \[\leadsto \color{blue}{\Re(\left(\left(\left(\left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) + \left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right)\right)\right)\right) + \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(15 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - 0.0 \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(15 \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + 0.0 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) + \left(\left(\left(20 \cdot -1 - 0.0 \cdot 1\right) + \left(20 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right)\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(\left(\left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(1 + 0.0 i\right)\right) + \left(\left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(\left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) \cdot \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) + \left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + \left(6 \cdot 1 + 0.0 \cdot -1\right) i\right)\right)\right)\right) + \left(\left(\left(-1 \cdot -1 - 1 \cdot 1\right) + \left(1 \cdot -1 + 1 \cdot -1\right) i\right) \cdot \left(\left(\left(15 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right) - 0.0 \cdot \left(1 \cdot -1 + 1 \cdot -1\right)\right) + \left(15 \cdot \left(1 \cdot -1 + 1 \cdot -1\right) + 0.0 \cdot \left(-1 \cdot -1 - 1 \cdot 1\right)\right) i\right) + \left(\left(\left(20 \cdot -1 - 0.0 \cdot 1\right) + \left(20 \cdot 1 + 0.0 \cdot -1\right) i\right) + \left(15 + 0.0 i\right)\right)\right)\right)\right))\]

Reproduce

herbie shell --seed 2019173 
(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))))