Average Error: 0 → 0
Time: 24.3s
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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))\]
\[\Re(\left(\left(40 + 48 i\right) + \left(\left(-36 + -24 i\right) + \left(-5 + -24 i\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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))
\Re(\left(\left(40 + 48 i\right) + \left(\left(-36 + -24 i\right) + \left(-5 + -24 i\right)\right)\right))
double f() {
        double r119247 = -1.0;
        double r119248 = 1.0;
        double r119249 = /* ERROR: no complex support in C */;
        double r119250 = r119249 * r119249;
        double r119251 = r119250 * r119249;
        double r119252 = r119251 * r119249;
        double r119253 = r119252 * r119249;
        double r119254 = r119253 * r119249;
        double r119255 = 6.0;
        double r119256 = 0.0;
        double r119257 = /* ERROR: no complex support in C */;
        double r119258 = r119257 * r119249;
        double r119259 = r119258 * r119249;
        double r119260 = r119259 * r119249;
        double r119261 = r119260 * r119249;
        double r119262 = r119261 * r119249;
        double r119263 = r119254 + r119262;
        double r119264 = 15.0;
        double r119265 = /* ERROR: no complex support in C */;
        double r119266 = r119265 * r119249;
        double r119267 = r119266 * r119249;
        double r119268 = r119267 * r119249;
        double r119269 = r119268 * r119249;
        double r119270 = r119263 + r119269;
        double r119271 = 20.0;
        double r119272 = /* ERROR: no complex support in C */;
        double r119273 = r119272 * r119249;
        double r119274 = r119273 * r119249;
        double r119275 = r119274 * r119249;
        double r119276 = r119270 + r119275;
        double r119277 = r119276 + r119267;
        double r119278 = r119277 + r119258;
        double r119279 = /* ERROR: no complex support in C */;
        double r119280 = r119278 + r119279;
        double r119281 = /* ERROR: no complex support in C */;
        return r119281;
}

double f() {
        double r119282 = 40.0;
        double r119283 = 48.0;
        double r119284 = /* ERROR: no complex support in C */;
        double r119285 = -36.0;
        double r119286 = -24.0;
        double r119287 = /* ERROR: no complex support in C */;
        double r119288 = -5.0;
        double r119289 = /* ERROR: no complex support in C */;
        double r119290 = r119287 + r119289;
        double r119291 = r119284 + r119290;
        double r119292 = /* ERROR: no complex support in C */;
        return r119292;
}

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 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 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 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 i\right) \cdot \left(-1 + 1 i\right)\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(\left(6 + 0 i\right) \cdot \left(-1 + 1 i\right)\right)\right) + \left(1 + 0 i\right)\right))\]
  2. Simplified0

    \[\leadsto \color{blue}{\Re(\left(\left(\left(-5 + -24 i\right) + \left(-36 + -24 i\right)\right) + \left(40 + 48 i\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(40 + 48 i\right) + \left(\left(-36 + -24 i\right) + \left(-5 + -24 i\right)\right)\right))\]

Reproduce

herbie shell --seed 2019129 
(FPCore ()
  :name "3.9.1 real part (p56)"
  (re (+.c (+.c (+.c (+.c (+.c (+.c (*.c (*.c (*.c (*.c (*.c (complex -1 1) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (*.c (*.c (*.c (*.c (*.c (complex 6 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (*.c (complex 20 0) (complex -1 1)) (complex -1 1)) (complex -1 1))) (*.c (*.c (complex 15 0) (complex -1 1)) (complex -1 1))) (*.c (complex 6 0) (complex -1 1))) (complex 1 0))))