Average Error: 0 → 0
Time: 23.4s
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(-5 + -24 i\right) + \left(\left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right) + \left(\left(40 + 40 i\right) + \left(-60 + 0 i\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 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(-5 + -24 i\right) + \left(\left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right) + \left(\left(40 + 40 i\right) + \left(-60 + 0 i\right)\right)\right)\right))
double f() {
        double r1700275 = -1.0;
        double r1700276 = 1.0;
        double r1700277 = /* ERROR: no complex support in C */;
        double r1700278 = r1700277 * r1700277;
        double r1700279 = r1700278 * r1700277;
        double r1700280 = r1700279 * r1700277;
        double r1700281 = r1700280 * r1700277;
        double r1700282 = r1700281 * r1700277;
        double r1700283 = 6.0;
        double r1700284 = 0.0;
        double r1700285 = /* ERROR: no complex support in C */;
        double r1700286 = r1700285 * r1700277;
        double r1700287 = r1700286 * r1700277;
        double r1700288 = r1700287 * r1700277;
        double r1700289 = r1700288 * r1700277;
        double r1700290 = r1700289 * r1700277;
        double r1700291 = r1700282 + r1700290;
        double r1700292 = 15.0;
        double r1700293 = /* ERROR: no complex support in C */;
        double r1700294 = r1700293 * r1700277;
        double r1700295 = r1700294 * r1700277;
        double r1700296 = r1700295 * r1700277;
        double r1700297 = r1700296 * r1700277;
        double r1700298 = r1700291 + r1700297;
        double r1700299 = 20.0;
        double r1700300 = /* ERROR: no complex support in C */;
        double r1700301 = r1700300 * r1700277;
        double r1700302 = r1700301 * r1700277;
        double r1700303 = r1700302 * r1700277;
        double r1700304 = r1700298 + r1700303;
        double r1700305 = r1700304 + r1700295;
        double r1700306 = r1700305 + r1700286;
        double r1700307 = /* ERROR: no complex support in C */;
        double r1700308 = r1700306 + r1700307;
        double r1700309 = /* ERROR: no complex support in C */;
        return r1700309;
}

double f() {
        double r1700310 = -5.0;
        double r1700311 = -24.0;
        double r1700312 = /* ERROR: no complex support in C */;
        double r1700313 = 24.0;
        double r1700314 = /* ERROR: no complex support in C */;
        double r1700315 = 0.0;
        double r1700316 = 8.0;
        double r1700317 = /* ERROR: no complex support in C */;
        double r1700318 = r1700314 + r1700317;
        double r1700319 = 40.0;
        double r1700320 = /* ERROR: no complex support in C */;
        double r1700321 = -60.0;
        double r1700322 = /* ERROR: no complex support in C */;
        double r1700323 = r1700320 + r1700322;
        double r1700324 = r1700318 + r1700323;
        double r1700325 = r1700312 + r1700324;
        double r1700326 = /* ERROR: no complex support in C */;
        return r1700326;
}

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(-5 + -24 i\right) + \left(\left(\left(40 + 40 i\right) + \left(-60 + 0 i\right)\right) + \left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right)\right)\right))}\]
  3. Final simplification0

    \[\leadsto \Re(\left(\left(-5 + -24 i\right) + \left(\left(\left(24 + -24 i\right) + \left(0 + 8 i\right)\right) + \left(\left(40 + 40 i\right) + \left(-60 + 0 i\right)\right)\right)\right))\]

Reproduce

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