Average Error: 0.0 → 0.0
Time: 6.9s
Precision: 64
\[\left(\left(\left(a + b\right) + c\right) + d\right) + e\]
\[\left(\left(\left(a + b\right) + c\right) + d\right) + e\]
\left(\left(\left(a + b\right) + c\right) + d\right) + e
\left(\left(\left(a + b\right) + c\right) + d\right) + e
double f(double a, double b, double c, double d, double e) {
        double r1368498 = a;
        double r1368499 = b;
        double r1368500 = r1368498 + r1368499;
        double r1368501 = c;
        double r1368502 = r1368500 + r1368501;
        double r1368503 = d;
        double r1368504 = r1368502 + r1368503;
        double r1368505 = e;
        double r1368506 = r1368504 + r1368505;
        return r1368506;
}

double f(double a, double b, double c, double d, double e) {
        double r1368507 = a;
        double r1368508 = b;
        double r1368509 = r1368507 + r1368508;
        double r1368510 = c;
        double r1368511 = r1368509 + r1368510;
        double r1368512 = d;
        double r1368513 = r1368511 + r1368512;
        double r1368514 = e;
        double r1368515 = r1368513 + r1368514;
        return r1368515;
}

Error

Bits error versus a

Bits error versus b

Bits error versus c

Bits error versus d

Bits error versus e

Try it out

Your Program's Arguments

Results

Enter valid numbers for all inputs

Derivation

  1. Initial program 0.0

    \[\left(\left(\left(a + b\right) + c\right) + d\right) + e\]
  2. Final simplification0.0

    \[\leadsto \left(\left(\left(a + b\right) + c\right) + d\right) + e\]

Reproduce

herbie shell --seed 1 
(FPCore (a b c d e)
  :name "a+b+c+d+e"
  :precision binary64
  (+ (+ (+ (+ a b) c) d) e))