Average Error: 0 → 0
Time: 38.5s
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(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 20 - 0.0 \cdot 1\right) + \mathsf{fma}\left(1, 20, 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + 15\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right) i\right)\right)\right)\right) + \left(\left(\left(1 + \left(6 \cdot -1 - 0.0 \cdot 1\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right)\right) 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(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 20 - 0.0 \cdot 1\right) + \mathsf{fma}\left(1, 20, 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + 15\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right) i\right)\right)\right)\right) + \left(\left(\left(1 + \left(6 \cdot -1 - 0.0 \cdot 1\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right)\right) i\right)\right))
double f() {
        double r1594287 = -1.0;
        double r1594288 = 1.0;
        double r1594289 = /* ERROR: no complex support in C */;
        double r1594290 = r1594289 * r1594289;
        double r1594291 = r1594290 * r1594289;
        double r1594292 = r1594291 * r1594289;
        double r1594293 = r1594292 * r1594289;
        double r1594294 = r1594293 * r1594289;
        double r1594295 = 6.0;
        double r1594296 = 0.0;
        double r1594297 = /* ERROR: no complex support in C */;
        double r1594298 = r1594297 * r1594289;
        double r1594299 = r1594298 * r1594289;
        double r1594300 = r1594299 * r1594289;
        double r1594301 = r1594300 * r1594289;
        double r1594302 = r1594301 * r1594289;
        double r1594303 = r1594294 + r1594302;
        double r1594304 = 15.0;
        double r1594305 = /* ERROR: no complex support in C */;
        double r1594306 = r1594305 * r1594289;
        double r1594307 = r1594306 * r1594289;
        double r1594308 = r1594307 * r1594289;
        double r1594309 = r1594308 * r1594289;
        double r1594310 = r1594303 + r1594309;
        double r1594311 = 20.0;
        double r1594312 = /* ERROR: no complex support in C */;
        double r1594313 = r1594312 * r1594289;
        double r1594314 = r1594313 * r1594289;
        double r1594315 = r1594314 * r1594289;
        double r1594316 = r1594310 + r1594315;
        double r1594317 = r1594316 + r1594307;
        double r1594318 = r1594317 + r1594298;
        double r1594319 = /* ERROR: no complex support in C */;
        double r1594320 = r1594318 + r1594319;
        double r1594321 = /* ERROR: no complex support in C */;
        return r1594321;
}

double f() {
        double r1594322 = -1.0;
        double r1594323 = 1.0;
        double r1594324 = r1594322 - r1594323;
        double r1594325 = r1594323 + r1594322;
        double r1594326 = r1594324 * r1594325;
        double r1594327 = r1594322 + r1594322;
        double r1594328 = r1594323 * r1594327;
        double r1594329 = /* ERROR: no complex support in C */;
        double r1594330 = 15.0;
        double r1594331 = 0.0;
        double r1594332 = /* ERROR: no complex support in C */;
        double r1594333 = 20.0;
        double r1594334 = r1594322 * r1594333;
        double r1594335 = r1594331 * r1594323;
        double r1594336 = r1594334 - r1594335;
        double r1594337 = r1594331 * r1594322;
        double r1594338 = fma(r1594323, r1594333, r1594337);
        double r1594339 = /* ERROR: no complex support in C */;
        double r1594340 = r1594332 + r1594339;
        double r1594341 = 6.0;
        double r1594342 = r1594341 * r1594322;
        double r1594343 = r1594342 - r1594335;
        double r1594344 = r1594343 + r1594330;
        double r1594345 = r1594323 * r1594341;
        double r1594346 = fma(r1594322, r1594331, r1594345);
        double r1594347 = r1594346 + r1594331;
        double r1594348 = /* ERROR: no complex support in C */;
        double r1594349 = r1594329 * r1594348;
        double r1594350 = r1594340 + r1594349;
        double r1594351 = r1594329 * r1594350;
        double r1594352 = r1594323 + r1594343;
        double r1594353 = r1594326 * r1594326;
        double r1594354 = r1594328 * r1594328;
        double r1594355 = r1594353 - r1594354;
        double r1594356 = r1594326 * r1594355;
        double r1594357 = r1594328 * r1594326;
        double r1594358 = r1594357 + r1594357;
        double r1594359 = r1594328 * r1594358;
        double r1594360 = r1594356 - r1594359;
        double r1594361 = r1594352 + r1594360;
        double r1594362 = r1594355 * r1594328;
        double r1594363 = r1594358 * r1594326;
        double r1594364 = r1594362 + r1594363;
        double r1594365 = r1594364 + r1594347;
        double r1594366 = /* ERROR: no complex support in C */;
        double r1594367 = r1594351 + r1594366;
        double r1594368 = /* ERROR: no complex support in C */;
        return r1594368;
}

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(1 + \left(-1 \cdot 6 - 0.0 \cdot 1\right)\right) + \left(\left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) - \left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right)\right) + \left(\left(\mathsf{fma}\left(-1, 0.0, 6 \cdot 1\right) + 0.0\right) + \left(\left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(\left(-1 + 1\right) \cdot \left(-1 - 1\right)\right)\right)\right) i\right) + \left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(\left(-1 + 1\right) \cdot \left(-1 - 1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(-1 \cdot 6 - 0.0 \cdot 1\right) + 15\right) + \left(\mathsf{fma}\left(-1, 0.0, 6 \cdot 1\right) + 0.0\right) i\right)\right) + \left(\left(\left(20 \cdot -1 - 0.0 \cdot 1\right) + \mathsf{fma}\left(1, 20, 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(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(15 + 0.0 i\right) + \left(\left(-1 \cdot 20 - 0.0 \cdot 1\right) + \mathsf{fma}\left(1, 20, 0.0 \cdot -1\right) i\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right) + 1 \cdot \left(-1 + -1\right) i\right) \cdot \left(\left(\left(6 \cdot -1 - 0.0 \cdot 1\right) + 15\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right) i\right)\right)\right)\right) + \left(\left(\left(1 + \left(6 \cdot -1 - 0.0 \cdot 1\right)\right) + \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right)\right)\right) + \left(\left(\left(\left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) - \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right)\right) \cdot \left(1 \cdot \left(-1 + -1\right)\right) + \left(\left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right) + \left(1 \cdot \left(-1 + -1\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) \cdot \left(\left(-1 - 1\right) \cdot \left(1 + -1\right)\right)\right) + \left(\mathsf{fma}\left(-1, 0.0, 1 \cdot 6\right) + 0.0\right)\right) i\right)\right))\]

Reproduce

herbie shell --seed 2019200 +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))))